我正在使用一个拥有空主和多个分支的git仓库。当我做一个git pull时,它似乎只为主人拉下来但不适用于分支。
在我推动之前,我发现自己必须为每个分支做git checkout branch; git pull
。是否有我可以使用的命令或开关
拉动并将更改应用于所有分支并掌握?
答案 0 :(得分:7)
我认为由于git pull
的作用,没有可用的命令或开关 - 它从远程获取更改(如git fetch
)并将更改合并到当前分支(git merge origin/master
或无论你当前的分支轨道)。问题不是第一部分(实际上git fetch
获取所有远程分支的更改)但是合并 - 当发生合并冲突时应该怎么做?您只能在工作副本上合并,而不能在git对象上合并。当你开始合并时,你需要中止它或解决所有冲突并创建合并提交。
答案 1 :(得分:4)
问题与git pull
git push
不符合git config --global push.default tracking
。尝试将git设置为仅推送到当前分支正在跟踪的分支(如果适用):
{{1}}
与此同时,你 能够随时推送,但你会得到拒绝快速推送的分支机构的拒绝通知。那些通常是你没有工作的分支,所以不用太在意。
当您未指定要推送的内容时,上面的配置将为您提供更明智的行为。