Git入门学习(五)-撤销修改和删除文件
简单粗暴点,直接开始一.撤销修改第一种情况:只是在工作区作出了修改现在我们在 readme 文件添加一些内容:社会我宝儿姐,人美路子野,溜门撬锁、闷棍埋人,样样精通。宝儿姐也是有威风凛凛、能喊出名字的招式的,那就是阿(A)威(V)十八式……扯得有点远。。。。。。添加完内容,用git status查看一下:Git提示我们可以通过git checkout -- < file ...
简单粗暴点,直接开始
一.撤销修改
第一种情况:只是在工作区作出了修改
现在我们在 readme 文件添加一些内容:社会我宝儿姐,人美路子野,溜门撬锁、闷棍埋人,样样精通。宝儿姐也是有威风凛凛、能喊出名字的招式的,那就是阿(A)威(V)十八式……
扯得有点远。。。。。。
添加完内容,用git status
查看一下:
Git提示我们可以通过
git checkout -- < file >
丢弃工作区的修改。
git checkout -- readme.txt
执行完git chekout -- readme.txt
命令之后,我宝儿姐已经没有了,刚刚的修改已经丢弃掉了。
第二种情况:工作区的修改,被add到了暂存区
重新在 readme 文件里面添加我宝儿姐的牛逼招式:阿威十八式。并且git add readme.txt
只进行git add
不要git commit
接着用git status
查看一下:
同样,Git会提示我们
git reset HEAD < file >可以把暂存区的修改撤销掉,重新放回到工作区
当我们用HEAD
时,表示仓库最新的版本,因为我们当前还没有 git commit
,所以不是 HEAD^
git reset HEAD readme.txt
执行完git reset HEAD readme.txt
之后,就把add到暂存区的修改回退到工作区了。
接着用git status
查看一下,现在暂存区是干净的,工作区有修改。
现在再把工作区的修改丢弃了。操作同第一种情况。即执行git checkout -- readme.txt
在 readme 文件里面,我宝儿姐的招式已经没有了。
第三种情况:commit到了仓库
直接git reset --hard HAED^
回退到上一个版本
二.删除文件
首先添加一个 test 文件到仓库。
通过命令:rm test.txt
删除该文件。然后通过git status
查看状态
接下来
1.如果我们确定要从版本库删除这个 test 文件,那么就用命令:
git rm
删除文件,并且用git commit
提交
如图,这样 test 文件就已经从版本库成功删除了
2.如果我们只是误删了 test 文件,但是版本库里面还有该文件,所以要恢复到本地,就用命令:
git checkout -- test.txt
git checkout
其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。恢复的只是版本库里面最新版本,如果该文件有修改没有提交到版本库,那么你的这次修改就会丢失。
小结
1.只在工作区做了修改
#撤销工作区修改
git checkout -- <file>
2.工作区的修改add到了暂存区
#1.撤销暂存区的修改,重新放回工作区
git reset HEAD <file>
#2.撤销工作区修改
git checkout -- <file>
3.commit到了仓库
#直接回退到上个版本
git reset --hard HAED^
4.删除文件
命令删除某个文件:rm test.txt
或者直接在资源管理器操作删除
然后有两种情况:
#1.确定从版本库删除
git rm test.txt
git commit -m "确定删除test"
#2.误删,这是在本地删除了,从版本库再恢复
git checkout -- test.txt
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)