基于SHA的git pull

d3b*_*g3r 8 git

我想知道如何从基于SHA的回购拉?

git pull origin master
Run Code Online (Sandbox Code Playgroud)

一旦我们完成,上面的代码将拉大师git add remote.

Eri*_*ric 16

git pull为你做两件事:

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

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

执行此操作的最佳方法是两个命令:

git fetch origin
git merge YOUR_SHA_HERE
Run Code Online (Sandbox Code Playgroud)

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

git fetch origin
git checkout YOUR_SHA_HERE
Run Code Online (Sandbox Code Playgroud)

如果你想要的是获得特定的版本,并使其成为新的"主"(或另一个分支),那么你会想要运行

git fetch origin
git reset --hard YOUR_SHA_HERE
Run Code Online (Sandbox Code Playgroud)

所有这些都将从存储库中获取新代码(通过'git fetch origin'),但是有不同的方法来组合/替换当前代码.


wad*_*rld 6

我认为没有办法根据SHA提取分支的一部分.

有什么不对:

git pull
git reset --hard <sha>
Run Code Online (Sandbox Code Playgroud)