0

我的最终目标是快速更新我的本地工作分支。

在远程,有一个巨大的数据库,其中包含许多分支和标签等。一旦我将远程存储库同步(或克隆)到本地存储库中,当我执行 'repo forall -c 'git pull' 以获取最新信息时,会检索所有 git 项目的所有信息,因此需要很长时间。

例如,my_local_working_branch_1 对应于 remote/working_branch_1。就我而言,my_local_working_branch_1 大约有 300 个 git 项目

$ git branch
my_local_working_branch_1

$ repo forall -c 'git pull'
remote : couting objects: ...
remote : Compressing object: ...
remote : Total ...
From ssh://......
*[new branch] working_branch_2
*[new branch] working_branch_3
*[new tag]    ...
*[new tag]    ...

为了节省时间,我只想从 remote/working_branch 更新 my_local_working_branch,实际上是它的 300 个 git 项目。

我可以使用 git fetch 或 git pull 吗?请给出详细说明。

如果您需要更多信息来完全理解它,请告诉我。

谢谢。

4

1 回答 1

1

你可以pull选择分支(你实际上在做什么),或者fetch+rebase它。

git pull <remote> <branch>

# the same as 

git fetch <remote> <branch>
git merge <remote>/<branch> <local_branch>

或者:

git fetch <remote> <branch>
git rebase <remote>/<branch> <local_branch>

我让你试试这两种情况,看看哪一种适合你。

于 2012-07-23T07:00:51.177 回答