git基本操作
创建仓库
git init #在空文件夹下生成.git
添加文件
git add readme.txt #添加到暂存区
查看状态
git status #显示当前修改和提交状态
对比当前修改
git diff readme.txt
提交
git add readme.txt #提交前要添加到暂存区,可以添加多个文件到暂存区一次性提交
git commit -m 'readme.txt提交' #提交暂存区到仓库
查看日志
git log
git log --pretty=oneline #去除多余信息
回退版本
git reset --hard HEAD^ #回退一个版本
git reset --hard HEAD^^ #回退两个版本
git reset --hard HEAD^^^ #回退三个版本
git reset --hard HEAD~100 #回退一百个版本
查看版本
git reflog #能够查看回退之前的版本号
设置版本
git reset --hard 64cebf4 #通过版本号设置到指定版本
撤销
#1.readme.txt自动修改后,还没有放到暂存区,使用撤销修改就回到和版本库一模一样的状态。
#2.另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。
git checkout -- readme.txt #-- 很重要,如果没有 -- 的话,那么命令变成创建分支了。
移除文件
git rm b.txt
git commit -m 'delete b.txt'
分支
创建分支
git checkout -b dev #-b参数同下两句功能
git branch dev #创建分支
git checkout dev #切换分支
查看分支
git branch
切换分支
git checkout dev
合并分支
git merge dev #当前分支master,合并dev到master,默认Fast forward模式丢失分支信息
git merge –no-ff -m "merge dev" dev #–no-ff禁用Fast forward
删除分支
git branch -d dev
git stash
存储工作现场
git stash
git stash save "save message"
查看存储
git stash list
查看改动
git stash show #默认第一个存储
git stash show stash@{1} #第二次存储
显示改动
git stash show -p
git stash show stash@{1} -p
应用存储
git stash apply #会把存储从存储列表中删除
git stash apply stash@{1}
恢复之前存储
git stash pop #将缓存堆栈中的对应stash删除
git stash pop stash@{1}
删除存储
git stash drop stash@{$num} #丢弃stash@{$num}存储,从列表中删除这个存储
git stash clear #删除所有缓存的stash
参考
Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!
git stash 用法总结和注意点