使用登台分支时“ghost”提交消息?

时间:2016-09-23 16:48:42

标签: git github version-control branching-and-merging pull-request

因此,在我的小组每天使用的回购中,我们有以下流程:

(分段是“默认”分支)

feature branch(es) -> PR-> staging branch -> PR -> production branch 

这个想法是,分段是许多功能分支组合在一起的地方,并且“生产”已完成“发布”。

但是,当我们将PR打开到生产时,我们几乎总会看到许多“旧”(已经合并到生产中)提交消息。文件级别的差异总是看起来很好,只有来自分段的更改,但提交消息历史记录始终是关闭的。

我们缺少什么?有人没有分享更新的升级?合并后我们是否应该重新开始生产?或者将生产合并到暂存以获取合并提交?

如果重要,我们通常会在合并时压缩到分段,以保持暂存/生产的历史记录清洁/简单。

1 个答案:

答案 0 :(得分:1)

抓住你的问题有点棘手,但你的流量IMO并不是一个好的做法,因为你必须始终确保登台和生产之间的提交历史是一样的。

发生的事情是差异很好,因为实际上没有任何错误,但是git并不关心它,它关心你的提交历史。这似乎搞砸了,很难在不看你的回购的情况下马上知道原因。但是,解决这个问题的简单方法是始终将生产合并到分段。

更好的方法是确保您拥有相同的提交历史记录(即生产中没有额外的旧提交,从而丢弃提交历史记录)您只需可视化您的仓库即可。你可以使用第三方工具,或者只是运行

git log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all

如果您的舞台和制作很久以前就分手了,而且从未见过面,那么您就有问题了。然后你需要同步这些分支,可能是通过将一个分支到另一个分支,但这可能引入很多冲突,所以你可能想要从分段启动一个新的生产分支并使用这个分支,并确保你有相同的提交之后的历史。