我的 repo 中有两个分支,我不断地来回编辑并将其中一个的更改合并到另一个分支中。但是在合并之前,我喜欢检查正在合并的更改以及替换的内容,但是 demo 和 master 中很少有文件本质上彼此不同,并且它们将始终存在。这就是为什么有 2 个不同的分支。所以我倾向于使用git checkout --patch demo
将代码从演示分支拉入主分支。但这会不必要地检查所有文件。
是否可以交互地从 2 个分支中检出特定文件,而不是检查整个分支?关于 Git 上补丁方法的文档非常少。我希望有人能帮我解决这个问题。
大多数与工作目录交互的 Git 命令允许您将命令限制在特定路径。这通常在命令的末尾完成,由分隔--
. 许多命令也接受没有该分隔符的路径,但有时这是必要的,以避免路径和分支名称(或树状名称)之间的歧义。
因此,在您的情况下,您可以按照git checkout
命令概要中的说明使用它:
git checkout [-p|--patch] [<tree-ish>] [--] [<paths>…]
运行git checkout --patch demo -- path/to/file
应该适用于您的情况,以将 checkout 命令限制为仅适用于该文件路径,即使在活动--patch
模式下也是如此。
顺便说一句,该path/to/file
部分也可以是目录的路径,这将使该命令运行该目录中的所有文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句