【发布时间】:2014-09-20 10:59:22
【问题描述】:
我们有两个独立的 git 存储库,我们称它们为 DEV 和 LIVE。很多提交发生在 DEV 中。有时,我们希望在一次提交中使用 DEV 并用它覆盖 LIVE(不保留整个历史记录并在 LIVE 中查看所有历史提交)。
最简单、最安全的方法是什么?
【问题讨论】:
标签: git github controls version
我们有两个独立的 git 存储库,我们称它们为 DEV 和 LIVE。很多提交发生在 DEV 中。有时,我们希望在一次提交中使用 DEV 并用它覆盖 LIVE(不保留整个历史记录并在 LIVE 中查看所有历史提交)。
最简单、最安全的方法是什么?
【问题讨论】:
标签: git github controls version
您可以维护一个“发布”分支,您可以使用它从 DEV 推送到 LIVE。
您需要做的所有事情(当您想要更新 LIVE 时)就是将 master 合并到 release(生成一个 commit),然后推送该 release 分支。
git remote add LIVE /url/to/LIVE/repo.git
git fetch LIVE
git checkout master
# would work if there were already a release branch in LIVE
git branch -u LIVE/release release master
# otherwise, just create a local one
git branch release master
# ... do some commit
# when ready to deliver
git checkout release
git merge master
# first push to LIVE
git push -u LIVE release
# if there were already a release branch in LIVE
git push
【讨论】: