吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2975|回复: 3
收起左侧

[其他转载] Git教程(七)

[复制链接]
NullPointer 发表于 2016-12-16 11:54
本帖最后由 NullPointer 于 2016-12-16 11:59 编辑

1、撤销修改
问:什么是撤销修改?
答:比如你把本地文件进行了修改,但是你不想还原为与版本库最新文件的内容,这时候就需要撤销修改
问:如何撤销修改?
答:利用git checkout -- file命令可以丢弃对工作区的修改。
解释:这里有两种情况:
(1)file修改后还没有放到暂存区,那么执行命令git checkout -- file就会恢复到和版本库中的file一模一样的内容。
(2)file修改后已经放到暂存区,那么执行命令git checkout -- file就会恢复到和暂存区中的file一模一样的内容。
命令中的--很重要,若没有--就变成了“切换到另一个分支”的命令。(后续我会讲解分支概念)
Demo1:
1.1、对hello.txt文件进行修改 1.gif
1.2、然后用git checkout -- hello.txt命令
2.gif
1.3、再次查看hello.txt文件内容,发现恢复到了与版本库最新文件内容。
3.gif
ps:这里细心的童鞋会发现为什么hello.txt文件的“and you”也没了?那是因为在上一节我们演示git管理的是修改而非文件时候写的数据,并没有添加到暂存区也没提交,所以一起被还原了。
Demo2:
1.1、对hello.txt文件进行修改
11.gif
1.2、然后用git add hello.txt将文件放到暂存区
22.gif
1.3、再次修改hello.txt文件
33.gif
1.4、然后用git checkout -- hello.txt命令
44.gif
1.5、再次查看hello.txt文件内容,发现恢复到了与暂存区最新文件内容。
55.gif
Demo2视频教程:
http://oi5l9slpi.bkt.clouddn.com/Video_2016-12-16_114213.wmv
问:假如我添加到暂存区但没有commit的内容不想要了,怎么撤销?
答:用git reset HEAD file命令可以把暂存区的内容撤销回工作区,git reset 既可以版本回退又可以撤销暂存区的内容。当为HAED时表示最新的版本。
如何验证是否撤销成功?执行git status命令查看状态。

视频教程:
http://oi5l9slpi.bkt.clouddn.com/Git-07-2.wmv
小结
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

2、删除文件
2.1、删除工作区的文件,直接鼠标右键删除。
2.2、删除版本库的文件,需要用git rm file命令。然后在git commit。
若工作区误操作删除了hello.txt文件,不用担心,可以用git checkout -- hello.txt将版本库中的文件检出,但内容与版本库一致。
此步骤无教程,自己按步骤操作,简单。

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

任意666 发表于 2016-12-16 12:33
很好啊    看起来不错的样子
101MHz 发表于 2017-5-17 09:11
git功能还是很强大的,看每个人写的帖子,都能学到一些新的细节。。。
天使3号 发表于 2018-7-10 11:01
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-3-29 23:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表