如何在Git

时间:2017-03-22 07:54:00

标签: git git-checkout

我在我的仓库中有两个分支,我来回编辑,并将一个变化合并到另一个。但在合并之前,我想检查哪些更改正在合并以及什么被替换为什么,但是demo和master中的文件很少,这些文件本身就彼此不同而且它们将永远不同。这就是2个不同分支的原因。所以我倾向于使用git checkout --patch demo将代码从演示分支拉入master。但这会不必要地检查所有文件 我是否有可能以交互方式检查来自2个分支的特定文件,而不是检查整个分支? 关于Git上的补丁方法的文档很少。我希望有人可以为我解决这个问题。

1 个答案:

答案 0 :(得分:1)

与工作目录交互的大多数Git命令允许您将命令限制为某个路径。这通常在命令结束时完成,由分隔--表示。许多命令也接受没有该分隔符的路径,但有时必须避免路径和分支名称(或树形结构)之间的歧义。

因此,在您的情况下,您可以使用the synopsis of the git checkout command中提到的

git checkout [-p|--patch] [<tree-ish>] [--] [<paths>…​]

运行git checkout --patch demo -- path/to/file应该适用于您的情况,以限制checkout命令仅适用于该文件路径,即使使用活动的--patch模式。

顺便说一下,path/to/file部分也可以是目录的路径,这将使该命令针对该目录中的所有文件运行。

相关问题