1

我合并到main,我不满意。例如 foo.c 不是我想要的版本,我想要一个来自分支“bar”上的提交“blah”的版本。我现在要做的是在分支“bar”上签出“blah”,在文本编辑器中复制文件 foo.c 中的所有内容,再次签出 main,打开我不喜欢的 foo.c 版本,然后通过粘贴来破坏它我正在复制的内容。

一定有更好的方法。

有什么见解吗?

4

2 回答 2

2

git checkout bar -- foo.c 将只签出foo.c分支中的文件,bar而不会触及工作树中的其他文件。

git checkout.

于 2012-05-28T14:58:42.417 回答
0
 git checkout bar path/to/foo.c

应该这样做。但是,如果您想查看 foo.c 包含的内容,可以使用git show

 git show <some sha1 or other reference>:path/to/foo.c

所以要查看文件包含 2 次提交前的内容,您可以:

 git show HEAD^^:path/to/foo.c

当前提交的副本可以缩短为:

 git show :path/to/foo.c
于 2012-05-28T20:42:18.427 回答