前言

有的时候我们在并行开发一些内容的时候,会遇到需要将两个版本打平的情况,比如将a分支的内容全部替换到b上,以它为基础再进行开发。

此时我们的b分支已经不需要自己之前开发的哪些内容,我的做法就是完全替换,git 的提交记录也没有了,省的文件冲突了。

教程

我们先切换到需要被覆盖的分支b:

git checkout b

然后通过reset命令进行重置:

git reset --hard a

如果你是首次拉取的仓库,那么a分支可能需要替换成:origin/a

此时b分支的内容全部被覆盖了,理论上不需要再提交到远程仓库的,不过以防万一还是补一下:

git push -f origin b

其他做法

方式有很多,这里介绍一下其他做法:

  1. 我们可以将b分支的内容全部删除了,然后提交一次记录。然后再去a分支把内容复制过来,再提交,也能实现。
  2. 或者我们也可以将b分支删除了,基于a分支再创建一个分支b。

当然还有很多其他做法,各自根据自己的情况使用即可。

分类: Git 笔记 标签: gitreset分支替换

评论

暂无评论数据

暂无评论数据

目录