git:将文件从另一个分支签出到当前分支(不要将HEAD切换到另一个分支)

我想将另一个分支中存在的文件的不同版本加载到当前分支中。

git help checkout说:

DESCRIPTION
   Updates files in the working tree to match the version in the index or
   the specified tree. If no paths are given, git checkout will also
   update HEAD to set the specified branch as the current branch.

有没有办法签出所有这些文件,但不更新HEAD?

Kache asked 2020-08-08T16:25:54Z
1个解决方案
56 votes

通过提供当前路径进行检出git checkout other-branch-name -- .

git checkout other-branch-name -- .

此操作类似于将HEAD切换到另一个分支而不签出文件,而只是从“其他方向”。

如@김민준所述,这将覆盖所有未提交的更改。 请记住,如果需要,可以先将它们藏起来或提交到某个地方。

Kache answered 2020-08-08T16:26:10Z
translate from https://stackoverflow.com:/questions/15536639/git-checkout-files-from-another-branch-into-current-branch-dont-switch-head-t