Git 如何使要素分支与主分支保持最新,反之亦然

Git 如何使要素分支与主分支保持最新,反之亦然,git,git-merge,git-rebase,git-push,git-pull,Git,Git Merge,Git Rebase,Git Push,Git Pull,这是我的用例。我有两个分支 硕士(foo) 初学者在此(酒吧)工作 foo是一个有经验的git用户,在master上工作,而bar是一个不想处理合并和其他事情的git初学者,他在上工作。foo处理合并到主分支的操作,并在主分支中有新内容时更新bar的分支。(我们希望保留提交消息) 所以foo做了git checkout初学者的工作,然后能够保存提交消息并更新bar的分支git rebase master。然后foo更新主分支git merge master。现在,当bar拉动他的树枝时,gi

这是我的用例。我有两个分支

  • 硕士(foo)
  • 初学者在此(酒吧)工作
foo是一个有经验的git用户,在
master
上工作,而bar是一个不想处理合并和其他事情的git初学者,他在
上工作。foo处理合并到主分支的操作,并在主分支中有新内容时更新bar的分支。(我们希望保留提交消息)

所以foo做了git checkout初学者的工作
,然后能够保存提交消息并更新bar的分支
git rebase master
。然后foo更新主分支
git merge master
。现在,当bar拉动他的树枝时,git拉动。他得到一个错误
没有当前分支的跟踪信息


bar应该从这里做什么?

让bar通过重定基来更新foo的分支不是一个好的工作流,除非foo实际上重定了bar本地分支的基调。原因是,如果foo正在重新设置远程分支的基址,那么bar将被迫将其工作与更改的历史重新同步,这对初学者来说是很困难的

上工作的bar初学者在这方面工作
是一个不想处理合并和其他事情的git初学者


Bar应该真正学会如何在Git中进行合并,以及所有其他“东西”。合并在Git工作流中经常发生,Git旨在使合并变得非常容易。我强烈推荐,特别是第1-3章和第6-6.5章。Bar还应该学习如何以交互方式和非交互方式重新设置基础。

为什么要先执行
重新设置基础
,然后执行
合并
合并
是冗余的吗?这里最好的做法是让bar自己做重新基础。“bar”可能应该向“foo”咨询工作流程,而“foo”可能应该做重新基础,而不是合并。我有点怪“福”没有指导“酒吧”foo在master上,可能不应该执行git merge master,因为它应该始终是最新的。我们需要更多信息来解决此问题。可以提供git log--oneline--graph--decoration--all的输出吗?此外,foo和bar是否使用一个或多个远程回购,或者它们实际上共享同一个本地回购?bar是否将远程回购设置为从中提取git?如果bar执行git remote-v,输出是什么?