在回复a question about pulling one commit at a time from a git repository时,建议我使用git remote update
代替git fetch
。我已经阅读了两个手册,但不能说我完全理解。
有人可以向我解释git fetch origin
和get remote update origin
的行为方式有何不同?
答案 0 :(得分:133)
使用时没有区别。
remote update
是一个非常高级的命令 - 它支持分组遥控器(remotes.<group> = <list>
),并更新所有遥控器(设置remote.<name>.skipDefaultUpdate
的那些除外),但不是更多获取的具体选项。然而,在引擎盖下,它与使用默认选项获取完全相同。
推荐remote update
而不是git fetch的答案实际上是在没有远程名称的情况下推荐它,只是为了获取所有内容,而不仅仅是命名为参数的名称。这相当于git fetch --all
。
我应该添加一个警告:fetch和远程更新实际上并没有使用相同的代码路径,直到v1.6.6.1(2009年12月23日发布)。不过在此之前,它们基本上做了同样的事情,只是使用了不同的代码(在角落情况下可能表现得略有不同,但我无法想到任何代码)。