Git的释放分行压扁承诺(Git Release Branch with Squashed Comm

2019-07-29 13:49发布

我试图做类似的事情这样的: 创建GitHub的仓库只有一个本地资源库的历史的一个子集

目前,我有我的主人所有的提交,现在我想打一个分支叫释放,只有拥有所有过去的单一提交提交和不老的提交历史。

我尝试使用该链接的方法,但这样做造成的任何进一步合并到发行不自动合并,这是有点讨厌。 (它给人的错误是壁球提交 - 不更新HEAD自动合并失败;解决冲突,然后提交结果。)有没有做这件事的不同方式,仍然可以自动合并?

我所知道的最简单的方法是创建一个单独的回购协议,但是,理想情况下,我宁愿只使用一个分支。

我希望它最后看起来是这样的:

V1是从提交2合并,v2是从提交5等合并

[发布]:

  • V2
  • V1

[主]:

  • 承诺5
  • 承诺4
  • 承诺3
  • 提交2
  • 初始

我是新来的git很抱歉,如果这是真的很明显! 谢谢!

Answer 1:

如果你想要做的发布分支的提交,将有完全相同的树顶部的主分支,你可以做承诺:

# make sure we are on the release branch
git checkout release
# populate index and working tree with tree from top master commit 
git read-tree -u --reset master
# commit it as "v1"
git commit -m v1


文章来源: Git Release Branch with Squashed Commits