Git 如何将本地主机合并到所有本地分支中?
我有几个本地分支,过了一段时间,我将所有这些分支合并到master中,然后我想将本地master合并到所有本地分支中Git 如何将本地主机合并到所有本地分支中?,git,Git,我有几个本地分支,过了一段时间,我将所有这些分支合并到master中,然后我想将本地master合并到所有本地分支中 我如何才能做到这一点?您可以删除本地分支并重新创建它们。这样,新分支将成为主分支的镜像。您可以使用git签出分支名称和&git重置--hard master获得相同的结果 请记住,这可以删除一些提交。如果您不想这样做(可能是因为这些本地分支有一个远程分支),您将需要执行git merge:git签出分支名称和&git merge mastergit中没有一个命令,但是在bash会
我如何才能做到这一点?您可以删除本地分支并重新创建它们。这样,新分支将成为主分支的镜像。您可以使用
git签出分支名称和&git重置--hard master
获得相同的结果
请记住,这可以删除一些提交。如果您不想这样做(可能是因为这些本地分支有一个远程分支),您将需要执行
git merge
:git签出分支名称和&git merge master
git中没有一个命令,但是在bash会话中执行“所有分支”操作的方法是:
for BRANCH in `ls .git/refs/heads`; do something $BRANCH; done
可用于合并的:
for BRANCH in `ls .git/refs/heads`; do if [[ "$BRANCH" != "master" ]] ; then git checkout $BRANCH ; git merge master ; fi ; done
或用于重置分支,如中的建议:
我在这里使用了VonC的答案,但出于某种原因,
ls.git/refs/heads
停止生成所有分支名称-此文件夹中只有两个分支名称。因此,在以下情况下,此修改版本对我有效:
for BRANCH in `git branch`; do if [[ "$BRANCH" != "master" ]] ; then git checkout $BRANCH ; git merge master --no-edit; fi ; done
据我所知,没有。
for BRANCH in `git branch`; do if [[ "$BRANCH" != "master" ]] ; then git checkout $BRANCH ; git merge master --no-edit; fi ; done