【发布时间】:2016-08-06 10:38:27
【问题描述】:
以下git命令有什么区别?
git fetch origin
和
git fetch --all
从命令行运行它们看起来就像他们做同样的事情。
【问题讨论】:
-
您引用的文档让像我这样的新 git 命令行用户感到困惑。我一直在寻找一个简洁明了的答案,其他发帖者对此有很大帮助
以下git命令有什么区别?
git fetch origin
和
git fetch --all
从命令行运行它们看起来就像他们做同样的事情。
【问题讨论】:
git fetch origin 仅从origin 获取数据,git fetch --all 从所有远程获取数据(origin 是其中之一)
【讨论】:
git fetch 本身默认使用git fetch origin。来自文档:“当没有指定远程时,默认情况下将使用原始远程,除非为当前分支配置了上游分支。”
git fetch --all
--all
获取所有遥控器。
如果您想获取所有数据并同时删除
删除的数据添加--prune标志
# Fetch all data, remove dangling objects and pack you repository
git fetch --all --prune=now
【讨论】:
git fetch --all --prune,图像将从我的本地删除?
origin/some-branch等本地信息将被删除。它确实不会以任何方式影响您的工作副本,只会影响您的远程存储库的本地副本。
您的存储库可能有一个别名为“origin”的远程点,但您也可能配置了其他远程点。后一个命令将从它们全部获取。
the docs for fetch 中的更多信息。
【讨论】: