初始化一个git项目
git init
添加文件
git add filename
添加目录
git add .
只提交已提交过得文件(不添加新增文件,只添加修改的文件)
git add -u
查看当前工作区文件提交的状态
git status
git status -s 查看简便信息
提交文件到本地
git commit filename -m '注释'
删除本地git提交
git rm --cached .
将文件推送到远程服务器
git push
将文件从远程拉取回来
git pull
添加忽略文件
添加.gitignore到git项目目录
编辑.gitignore,添加.idea/(此处idea为需要提交时候忽略的文件)
下载远程项目
git clone git_path
创建裸版本库
git clone --bare project_name path
查看文件提交记录
git log filename
查看修改文件差异(只能比较工作区和暂存区信息)
git diff file_name
git diff HEAD
查看提交详细记录
git show file_name
使用git移动修改文件(修改完之后,文件的日志记录都没了)
git mv old_file_name new_file_name
从git中删除
git rm file_name
删除非git管理文件(也就是没有add到git管理中的)
git clean
查看即将被删除的非git管理文件
git clean -n
删除非git管理文件,包含.gitignore中指定的文件
git clean -x
强制删除所有的git非管理文件(git clean需要设置clean.requireForce)
git clean -f
还原正在手头修改,但是没有add到git的文件(相当于svn revert,只不过git是本地的源)
git checkout file_name
删除已提交过的文件(把状态从add修改回来,可以使用checkout操作)
git reset HEAD file_name
创建一个分支
git branch dirname
查看存在的分支
git branch
git branch -a 查看所有的分支
切换到分支
git checkout branch_name
在某个版本上创建分支并求换
git checkout commit_name -b branch_name
切换到主干
git checkout master
合并分支
git merge branch_name
删除分支
git branch -d branch_name
强制删除分支
git branch -D branch_name
查看所有的远程的分支
git branch -r
重置提交(重置最近三次的提交)
git reset --hard HEAD~3
在分支上执行rebase
git checkout branch_name
git rebase master
rebase之后修改冲突,再提交
git add conflict_file
git rebase --continue
添加标签
git tag tag_name
查看标签
git tag
显示包含标签资料的历史记录
git log --decorate
查看git提交的注释
git log
编辑tag注释
git tag -a tag_name
然后再文件中输入注释
编辑tag注释
git tag -am "注释" tag_name
查看标签的提交记录
git show tag
查看tag注释
git tag -n
删除tag
git tag -d tag_name
合并提交注释
git commit --amend
进入编辑器,然后进行注释修改(使用git log进行提交注释查看)
取消上一次提交
git revert HEAD
删除最近提交
git reset --hart HEAD~~
查看远程git地址
git remote -v
查看git配置项
git config --list
编辑git配置
git config -e
保存本地工作进度
git stash
查看保存的快照
git stash list
恢复stash中的内容到工作区
git stash pop
恢复缓冲区内容
git stash apply stash_name
删除缓冲区中的内容
git clear