相关疑难解决方法(0)

从分支的Git签出文件,而不更改索引

在我的git开发中,我使用以下checkout命令结构将来自其他分支的单独文件引入到我的工作目录中。

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

根据文档,这也将文件更新为我的索引,就好像我要提交该文件一样—如果我不想提交该文件,则剩下了从索引中删除它的额外步骤。(我们正在使用二进制文件进行开发:(这种工作方式有助于测试我们的个人工作,该工作可能与并行工作的另一位开发人员的工作有关)

有什么方法可以从分支/提交中拉出/签出单个文件,从而更新工作目录而不是索引?


我想我可以将两个步骤混为一个命令,但是我很好奇是否已经有一个(单个)git命令能够完成此操作。

git vcs-checkout

8
推荐指数
2
解决办法
541
查看次数

为什么结帐有时会暂存文件?

当我第一次开始使用Git时,我发现checkout命令很混乱.但是,当我适应Git的版本控制模型时,它开始变得有意义了.现在我不得不向同事们教Git,我想checkout简单解释一下.我以为我有一个简单的解释(来自文档):

签出一个或多个工作树的路径

这似乎统一了一些你可以用结帐做的事情,这对于Git的新手来说似乎是一组多样化的操作:

git checkout .
git checkout HEAD .
git checkout HEAD~2
git checkout feature/update-readme README.md
Run Code Online (Sandbox Code Playgroud)

...除了最后一个,因为这不只是更新工作目录,它会分段文件.

我如何理解为什么或何时结账会导致某些事情上演而不是仅仅复制到工作目录中?

git working-directory git-checkout git-index git-stage

3
推荐指数
1
解决办法
946
查看次数