趣文网 > 作文大全

Java开发工具Idea必备技能之Revert操作

2020-12-01 20:55:01
相关推荐

Revert是撤销操作,类似于Ctrl+Z,不同的是,Revert是以版本为单位,撤销整个版本。可以这样理解Revert操作,假如有V1、V2、V3、V4、V5五个版本,Revert撤销V3版本,实际上就是合并V2版本和V5版本,并对V2版本和V5版本中都存在的有差异文件提示冲突。

举例说明

(1)如果我在版本V1上新建A、B两个文件提交后成版本V2,在版本V2上新建C、D两个文件提交后成版本V3。我用Revert撤销版本V2的内容。点击Revert后,A、B文件消失,因为A、B是我新建的文件,但是C、D文件会保留下来。可以看出来,Revert只会撤销选定版本的修改。

(2)如果我在版本V1上修改A、C提交后成版本V2,在版本V2上修改C、D提交后成版本V3。我用Revert撤销版本V2的内容,这时代码库的结构是:A会变回版本V1的内容,D仍然是版本V3的内容,但是文件C会产生冲突。

Revert正确姿势

(1)撤销当前操作是Revert的正确选择,千万不要尝试跨版本Revert。就像上面提到的五个版本,你应该首先Revert V5版本,然后V4版本,一层一层往下执行,而不要一来就Revert V3版本,这样做的好处是不会导致代码混乱。如果想把代码回滚到V3版本,那么执行两次Revert操作就可以,先Revert V5版本,然后Revert V4版本。不过在实际工作中不会这么做。

(2)在实际工作中用得最多的是撤销工作区或暂存区的代码。比如我在V5版本上修改了一些代码,但是还没有提交,这时我发现代码有问题,需要回退到V5版本,这时Revert就可以派上大用场。

扩展阅读

git本地代码库包含工作区、暂存区(index:add之后)、版本库(HEAD:commit之后)

本地代码都保存在工作区中,但是代码有状态之分,简单说下状态流转:新增加的文件为Untracked(未跟踪)状态,执行git add后变成Staged(已暂存)状态,Staged状态执行git commit则将修改同步到版本库中,最后通过push将版本库中的文件上传到远程仓库。

阅读剩余内容
网友评论
相关内容
延伸阅读
小编推荐

大家都在看

阳光下的成长作文600字 有关欲扬先抑的作文 万能英语作文开头结尾 描写初秋的作文 打屁股实践作文 菊花三年级作文 英语作文通知信 感人的故事作文400字 包子作文 可爱的校园作文 敢于挑战权威作文 二年级作文40字 作文柳树200字 长征的作文600字 夜游滕王阁作文 德福作文字数 家乡的枇杷作文 三年级采访作文 历年作文题目 关于三月街的作文 重庆的火锅作文 丰收节作文 晒稻谷的作文 银杏叶的作文 满分作文及赏析 一线天作文 九下英语作文 鼓励高考作文 描写村庄的作文 美丽的小区作文400字