今天想把代码合并到master分支上提交,结果把代码从我本地的分支都merge到主分支上后发现,有其他同事在我的分支修改提交过,所以本次合并把同事提交的代码也都合并过来了,然而他的这部分代码又是不需要提交的,该怎么做?

其实很简单,我们的vs code就提供了方法进行撤销merge操作:

这样就撤销了刚刚的合并,我们的merge过来的代码会重新显示在源代码管理栏那里,我们从中选取我们真正想提交的代码,把其他的修改撤销掉就好了。而且vs code多选文件也可以使用“ctrl+左键”和“左键+shift”哦,这个小技巧希望可以帮到你!

 

如果是撤销某次已经提交过的代码:

1、git log                                                                         #查看提交记录,找到出错的前一笔提交的commit_id

1、git reset --hard commit_id_before                              #回退到出错版本前一个commit

2、git cherry-pick commit_id_after                                  #将某次commit的更改应用到当前版本(将出错 commit 之后别人提交的代码合并到当前正常代码分支上)

3、git push origin HEAD --force                                      #强制提交

 

————————————+++++————————————+++++——————————+++++———

另外推荐一个保存修改记录的小插件,有的时候merge操作不当会导致代码丢失,可以下载一个local history,每次保存操作都会生成一个更新记录的副本,存在生成的.history文件夹中。提交的时候如果确认修改无误把生成的.history文件夹删除即可~

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐