git init
初始化本地仓库
git clone
从远程仓库克隆至本地
git add
将文件添加到暂存区(stage)
git status
显示当前状态,哪些文件在暂存区,哪些未加入暂存区,通常在commit之前使用该命令
git diff
显示版本差异
git log
显示commit日志
git reflog
显示所有分支的日志,包括被删的commit记录
git log -p
展开显示每次提交的内容差异
git log -p -1
展开显示每次提交的内容差异,-1
表示只显示最近的一次更新
git log --stat
显示改动文件的简要的增改行数统计
git log --author
显示指定作者的提交
提交代码至本地仓库
修改的文件已被git commit,但想再次修改不再产生新的Commit
$ git add sample.txt
$ git commit --amend -m"说明"
git push
将本地仓库的代码推送至远程仓库
git pull
将远程仓库的代码同步至本地仓库
git reset
版本回退,不加参数默认使用--mixed
参数
git reset --mixed
保留工作目录,清空暂存区。也就是工作区的修改、暂存区的内容以及由 reset 所导致的新的文件差异,都会被放进工作区
git reset HEAD^
撤回上次commit但未push的代码,commit的代码放回工作区
git stash
暂存未提交的代码,将代码恢复至上次commit之后的状态v
git stash save "message"
暂存未提交的代码时用message作为备注
git stash list
查看执行了哪些存储
git stash show
显示改动文件的简要增改行数统计,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num}
,比如第二个 git stash show stash@{1}
git stash show -p
显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p
,比如第二个:git stash show stash@{1} -p
git stash apply
应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0}
,如果要使用其他个,git stash apply stash@{$num}
, 比如第二个:git stash apply stash@{1}
git stash pop
命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num}
,比如应用并删除第二个:git stash pop stash@{1}
git stash drop stash@{$num}
丢弃stash@{$num}
存储,从列表中删除这个存储
git stash clear
删除所有缓存的stash
git stash –keep-index
只会存储未加入git管理的文件。所以如果想stash一部分文件,就可以先将不想stash的文件git add
至stage中,然后再执行git stash –keep-index
和git reset