使用 git pull -a origin develop 时 -a 标志是什么意思?

O C*_*nor 5 git pull

通常,当我想从远程存储库更新我的项目时,我使用以下命令行。

git pull -a origin develop
Run Code Online (Sandbox Code Playgroud)

我从我的项目团队成员那里了解到这一点,但我无法在互联网上找到 -a 标志的作用的答案。-a 是什么意思?

tor*_*rek 7

git pull命令本质上只是一个方便的快捷方式。1 它首先运行git fetch,然后运行另一个 Git 命令。第二个 Git 命令默认为git merge,但在各种情况下,您可以将第二个命令设置为git rebase

这是所有git pull做:它运行两个其他Git命令。所有选项和参数git pull要么控制它使用的第二个命令,要么通常直接传递给其他命令之一。

在这种情况下,-a--append传递给git fetch,它告诉它将所有提取的引用附加到FETCH_HEAD文件中(而不是替换任何现有FETCH_HEAD文件和提取的引用)。除非你FETCH_HEAD自己使用,否则这个选项是没有用的。


1由于要运行的最佳第二个命令可能取决于第一个命令的结果,因此为了方便,这个命令真的很不方便。这就像在你知道目的地是在你的社区、你的城市还是另一个大陆之前,你必须决定是步行、开车还是飞到一个目的地。


SiK*_*ing -1

git pull --help

-a, --append 将获取的引用的引用名称和对象名称附加到 .git/FETCH_HEAD 的现有内容中。如果没有此选项,.git/FETCH_HEAD 中的旧数据将被覆盖。