保持叉子最新的最有效方法

Sam*_*ich 6 git

我可以想到几种方法来保持最新的分叉:

  • git pull,使用脚本应用更改(拉动自动合并)
  • git pull合并(可能的冲突?)
  • git fetch
  • 也许某种方式使用另一个分支?

问题:保持叉子最新的最有效方法是什么?

Von*_*onC 7

保持最新版本是最初的回购:您需要将本地工作基于所述原始回购的最新图像.

通常,在三角形工作流程中,调用原始仓库upstream.

所以你需要做的就是:

git fetch upstream
git rebase upstream/master
git push --force
Run Code Online (Sandbox Code Playgroud)

这将在更新后重新定义您当前的分支upstream/master,然后您可以强制推送(前提是您是唯一一个在您自己的分支上工作).

三角工作流程

这与a 非常不同pull,因为它不会将上游的分支合并到您自己的本地分支.
相反,它会在这些分支之上重放你的lcoal工作,确保未来的pull请求将很容易接受回原始repo(快进合并,因为你只发布新的提交在最近的状态之上上游主分公司)