在我的git开发中,我使用以下checkout命令结构将来自其他分支的单独文件引入我的工作目录。
git checkout [<tree-ish>] [--] <pathspec>…
根据文档,这也会使用文件更新我的索引,就好像我想要提交它一样 - 如果我不想提交文件,请留下从索引中删除它的额外步骤。 (我们正在使用二进制文件进行开发:(这种工作方式有助于测试我们可能与另一个并行工作的开发人员的工作相关的个人工作)
有没有办法从分支/提交中提取/签出单个文件,以便更新工作目录而不是索引?
我想我可以将这两个步骤别名为一个命令,但我很好奇是否已经有一个(单个)git命令能够完成此任务。
答案 0 :(得分:3)
另一种方式是
git show otherBranch:fileName > fileName
这会在另一个分支
中创建一个包含该文件内容的新文件无论如何,如果您的工作流程需要经常执行此步骤,我会创建一个别名
答案 1 :(得分:1)
git restore --source=<tree> --worktree <pathspec>...
请参见the manpage。