在Git中执行'pull'之前,您是否需要“远程更新”?

时间:2011-04-29 14:22:49

标签: git git-pull git-remote

假设我已经从c:\中完成了以下操作,从远程源获取最新代码的正确方法是什么?

# Create repo...
mkdir Test
cd Test
git init
...create files
git add .
git commit -a -m "Init Commit"

# Clone repo...
cd ..
git clone Test TestClone

# Edit original
cd Test
...edit files
git commit -a -m "Init Edit"

# Go back to Clone
cd ..\TestClone

# Get latest code
# Now what??? pull or update then pull

3 个答案:

答案 0 :(得分:4)

Git会自动在您克隆的存储库中设置远程origin,并在您拉动时将您的分支机构配置为与origin上的等价物进行合并。

在这种情况下,你所要做的只是git pull

答案 1 :(得分:4)

其他人告诉你简短的版本:只是pull。但是因为你实际上问过`远程更新......

remote update是用于“从远程更新我们所知道的所有内容”的高级命令。它获取新的分支,它可以修剪旧分支,它可以为任意组的遥控器或所有它们执行此操作。它只更新远程跟踪分支(名称为origin/master);它不接触你的分支机构。如果您想要进行此类更新,则可以使用此命令。想要检查遥控器中的内容是非常普遍的,而不是将其中的任何内容合并到任何分支中,并且修剪陈旧分支的能力也非常好。

如果您只想将相应的远程分支合并到当前远程分支中,git pull是正确的命令。它会在过程中更新一些远程分支,是的,但这不是它的主要目的。

答案 2 :(得分:1)

通过阅读git help,我认为remote update就像fetch

git pull结合了git fetchgit merge。因此,执行git pull将从远程获取更改并将它们合并到工作树中。

当您想要从遥控器获取更新时,请执行git fetch,但不希望它们与您的本地更改混合。这对于脱机,检出新的本地分支(与当前分支无关)以及检查其他人正在处理的内容非常有用。

您只需要git remote update进行花哨的远程操作。 More discussion in this question

为了获得最新信息,请使用git pull