如何清理GIT分支并将其与另一个分支同步

hgqdbh6s  于 2022-11-20  发布在  Git
关注(0)|答案(2)|浏览(175)

我有4个分支。主要,释放,主,预览。
预览是做实验用的,我想清理预览分支,和发布分支同步。
如果我只是将发布分支合并到预览中,我仍然有旧的实验代码。我不知道如何去做

m1m5dgzv

m1m5dgzv1#

如果 您 希望 将 实验 保留 在 分支 中 , 可以 执行 以下 操作 :

git checkout preview
git merge --no-commit release
# let's get the contents of files just like in release:
git restore --staged --worktree --source=release -- .
git merge --continue

中 的 每 一 个
现在 您 有 一 个 releasepreview 的 合并 , 合并 的 内容 ( 文件 ) 就 像 release 一样 。
另 一 种 方法 , 没有 合并 , 但 有 文件 的 内容 , 就 像 在 release 中 的 结果 将 是 :

git checkout preview
git restore --staged --worktree --source=release -- .
git commit -m "Making this branch look like release, but without merging nor modifying history of this branch".

格式
如果 您 希望 分支 在 历史 记录 方面 也 像 release 一样 :

git checkout preview
git reset --hard release
# and now feel free to force-push into whatever remove branch you need to.

格式

bvjveswy

bvjveswy2#

既然你在注解中指出你对保存历史记录不感兴趣,你可以简单地删除分支,然后从你想要的任何提交重新创建它:

git branch -D preview
git branch preview release

或作为单个命令:

git branch -f preview release

上面的两个命令只有在分支当前未 checkout 时才有效。如果分支已 checkout ,则可以使用checkout

git checkout -B preview release

相关问题