如何从Git存储库的另一个分支中获取一个文件/

Joe*_*Joe 4 git atlassian-sourcetree

我正在使用Git.我想在一个分支中有一些代码.是否有一种简单的方法可以从不同的分支中获取一个文件的版本,或者是一种简单的方法使这个其他分支出现在我的文件系统的另一个目录中?

为了清楚起见,我想要检查其他版本,我不想完全替换它的版本.

我正在使用SourceTree,但我也很乐意接受基于命令行的答案?

Chr*_*ris 5

我认为(从git checkout文档的最后一个条目开始),这将完成你所追求的目标(不确定SourceTree,抱歉):

git checkout mybranch -- mypath/myfile
Run Code Online (Sandbox Code Playgroud)

资料来源:https://www.kernel.org/pub/software/scm/git/docs/git-checkout.html

git checkout [-p|--patch] [<tree-ish>] [--] <pathspec>…
Run Code Online (Sandbox Code Playgroud)

<paths>给出或--patch时,git checkout不会切换分支.它从索引文件或命名<tree-ish>(最常见的提交)更新工作树中的命名路径.在这种情况下,-b和--track选项毫无意义,并且给出其中任何一个都会导致错误.该<tree-ish>参数可用于指定特定的树(即提交,标记或树),以在更新工作树之前更新给定路径的索引.