趣文网 > 作文大全

项目开发中 如何快速回滚已经commit的代码(Android Studio)

2020-12-06 18:35:01
相关推荐

项目开发中,时常会遇到这样一种情况,代码已经commit(非push)上去了,但此时发现有误,不想提交了,如何回滚?

这点对于新手git的开发者还是比较陌生的。

今天和大家分享这个知识点,如果你对git用法很熟练,请跳过。

首先我们来看还没有commit任何代码的push界面:

然后我们随便修改一份文件,我这里修改MainActivity.java的内容,且执行了commit操作:

如果这时候我们发现刚才commit的有误,不想提交了,想对其进行回滚,如何进行revert commit了。

通过选中工程(或是直接选择MainActivity.java文件),点击右键,在弹出的列表中选择Git-->Repository-->Reset HEAD

其中

Git Root:表示要revert的目录

Current Branch:当前分支branch

Reset Type:

Soft:选择这个模式意思是仅仅撤销commit而已,不影响本地的任何文件,也不影响(index)缓存区的任何文件。

Hard:不仅撤销commit的内容,还将本地的文件指向commit前的版本,同时index也会指向commit前的版本。

Mixed:回滚index,其余的保持不变。

如果把HEAD后面加个“~1”,这里的数字代表次数,比如commit了三次, 1,就是回滚最后一次提交的,2,就是后两次提交的一起回滚了。

官方文档是这样描述的:Resets the index but not the working tree (i.e., the changed files are preserved but not marked for commit) and reports what has not been updated. This is the default action.

Validate:当前会影响到的文件有哪些,具体是什么。

当我们执行下soft模式的,执行完成后,看下图,刚才我们commit的记录已经没有了:

如果你不喜欢可视化的,习惯用命令行处理,命令行实现也是一样的:

git reset [--soft | --mixed [-N] | --hard] HEAD~X 其中X:代表次数。

希望对你学习有帮助。

【END】

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

大家都在看

小学作文300字 制作文件 作文框架 月光作文 粽子的作文 苦的作文 我的同桌的作文 手工作文 漂流作文 公园英语作文 青春作文结尾 北京英语作文 牡丹作文 小学作文400字 爱作文500字 菜园作文 成长作文题目 小猫咪作文 作文五十字 竹作文 泉州作文 妈妈作文300字 作文素材议论文 作文模版 挑战 的作文 优秀作文小学 作文儿童节 作文在线 在线作文 笑的作文