在许多不同的开源项目中,' master' branch仅包含表示项目发布的提交(例如:https://github.com/facebook/facebook-android-sdk/commits/master)
我的问题是 - 实现这个目的有什么诀窍吗? 我假设开发是在另一个分支上执行的,但是如何将合并/同步回到主服务器中,使其成为一个" clean"每次发布一次提交?
答案 0 :(得分:2)
我不确定您的其他任何项目是什么意思,但facebook/facebook-android-sdk
并不符合您的想法。这些是常规提交,其名称看起来像发布。您可以通过比较2个标签来查看发布中的更改内容:
您可以在主历史记录中找到所有这些提交:
唯一的"技巧"这里是常规开发在dev branch完成,并且仅在发布时合并为master,因此master总是包含最后一个稳定版本。
答案 1 :(得分:1)
我认为你可以通过squash merge实现这一点,它将在一次提交中组合来自分支的所有提交,这些提交将添加到master分支。