代码之家  ›  专栏  ›  技术社区  ›  blackbird

使用git fetch有什么好处?

git
  •  5
  • blackbird  · 技术社区  · 9 年前

    当使用git时,能够在不必合并/重新设置基址的情况下获取有什么好处?从这个 answer ,我明白了

    如果您需要使存储库保持最新,但正在处理可能会在更新文件时损坏的内容,这一点尤其有用。

    频繁的取数真的会使将来的合并变得不那么复杂或不太可能发生冲突吗?

    2 回复  |  直到 7 年前
        1
  •  8
  •   user229044    9 年前

    在不必合并/重新建立基础的情况下能够获取数据有什么好处?

    首先,如果你还没有任何东西可以合并或重新建立基础呢?如果你想查看别人推到远程的全新分支怎么办?你需要 fetch 以便让您的本地Git知道新的分支。

    频繁的提取是否会使将来的合并变得不那么复杂或不太可能发生冲突?

    不,这与抓取无关。如果您只是提取而不是合并或重新设置基址,那么 有理由认为你在帮助解决未来的冲突。

    fetch所做的就是让本地Git存储库查看远程Git存储中的情况。它允许您查看新分支并提交,并检查准备合并到本地分支而不实际合并它们的更改。

    它还允许您稍微优化工作流程,以减少网络点击。每个 git pull 涉及 git fetch ,所以如果你想 get pull 在五个不同的分支上,您有四个多余的 git获取 电话。除非你赶时间,否则这并不是什么大不了的事情:假设你正走出办公室赶火车,但你想确保在远程工作时,你可以从每个分支机构获得所有的更改。你可以简单地 git获取 当你在网络上时,先离开一次。稍后,如果没有网络连接,您可以手动 git checkout <branch>; get merge origin/<branch> 合并以前获取的更改。

        2
  •  1
  •   CodeWizard    9 年前

    git fetch的另一个未提及的方面是,您可以通过添加以下标志将所有本地repo与远程repo同步:

    # update whole repository including branches, tags and
    # with the --prune it will also remove teh deleted branches and tags
    # from your local repository 
    git fetch --all --prune