10

我想知道如何从基于 SHA 的回购中提取?

git pull origin master

完成后,上面的代码将拉出主人git add remote

4

2 回答 2

18

一个 git pull 为你做了两件事:

  1. 从存储库中获取特定分支
  2. 将其与您当前的分支合并。

听起来您想要做的是从存储库中获取特定修订并将其与当前分支合并。

最好的方法是使用两个命令:

git fetch origin
git merge YOUR_SHA_HERE

如果您想要的只是查看存储库中特定修订版中的内容并将其作为工作树,而不是进行合并,那么您会想要:

git fetch origin
git checkout YOUR_SHA_HERE

如果您想要获取特定版本,并将其设置为新的“主”(或另一个分支),那么您需要运行

git fetch origin
git reset --hard YOUR_SHA_HERE

所有这些都将从存储库中获取新代码(通过“git fetch origin”),但是有不同的方法可以与/替换您当前的代码。

于 2012-08-16T20:59:03.717 回答
7

我认为没有办法只提取基于 SHA 的分支的一部分。

有什么问题:

git pull
git reset --hard <sha>
于 2012-08-16T15:10:11.983 回答