1

我有一个 git 工作流,它至少涉及两个分支,“master”和“staging”。当我对放入 master 的内容感到满意时,我想将其推送到临时服务器以供其他人查看,为此,我需要将“staging”分支与“master”同步“ 分支。

目前,我必须这样做:

git checkout staging
git merge master
git checkout master

有什么方法可以让我在一个命令中将当前分支合并暂存分支中?

4

2 回答 2

1

如果合并失败,您可能想要处理冲突。因此,您需要在暂存分支中签出,否则冲突文件会在哪里?

您可以做的是为该进程创建一个 shell 别名:

alias updateStage="git checkout staging && git merge master && git checkout master"

如果合并失败git-merge将返回1并且它不会尝试返回 master 结帐,让您可以自由地解决冲突。

于 2012-09-04T16:12:12.833 回答
0

如果您不关心当前的内容staging,只想强制它指向与 master 相同的提交:

git update-ref refs/heads/staging refs/heads/master

https://git-scm.com/docs/git-update-ref

于 2016-02-12T12:58:21.260 回答