git2
版本回退
查看历史提交记录:
1 [win@zdiank learngit]$ git log 2 commit efe190b1a593dcfc5b94d1fa151eaed9708f6185 3 Author: zdiank <feixia5712@163.com> 4 Date: Sun Nov 1 13:08:46 2015 +0800 5 6 branch test 7 8 commit abb8e601d056abb7f45dfb3c621447189d15bd46 9 Author: zdiank <feixia5712@163.com> 10 Date: Sun Nov 1 12:43:10 2015 +0800 11 12 readme.txt 13 14 commit a1006afadfd2386f180d4489d58858f987a93eeb 15 Author: zdiank <feixia5712@163.com> 16 Date: Sun Nov 1 09:47:18 2015 +0800 17 18 readme.txt
回退:
HEAD ----------------当前
HEAD^---------------上一个
...................................
HEAD-100 ----------------上一百个
回到上一个版本:
git reset --hard HEAR
回到某个版本:
git reset --hard id
其中id为我们刚才用git log看到的那一大串数字,可以不全部写,写一部分也可以
工作区和暂存区
关于这个一些地方写的比较复杂,我们可以这样理解:
简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。
管理修改
两种情况:
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态
对于这两种撤销:
对于第一个情况:
git checkout -- readme.txt
对于第二个:
1是先 使用命令git reflog找到id git reset --hard id git checkout -- readme.txt
删除文件:
当我们提交到版本库中的在本地删除了,我们可以从库中恢复
git checkout -- text.txt
2.删除版本库中的版本
1 git rm text.txt 2 3 git commit -m 'remove text.txt' 4 5 这样就删除了 6 ----------------------------------------------------------------------------- 7 8 恢复的话 9 10 git reflog 11 找到我们添加时的id号’ 12 13 git reset --hard id 14 15 16 git checkout -- text.txt 17 18 19 恢复到了本地 20 ----------------------------------------------------------------------------------------

浙公网安备 33010602011771号