是否可能签出git暂存区?

是否可能签出git暂存区?,git,Git,我想知道是否有可能进入Git中的暂存区域(签出,不确定这个词),以确保即将提交的代码是稳定的、正确的等等 假设我修改了3个文件,它们与同一功能无关。我在集结区加了两个。如何确保我将要提交的代码可以编译 或者,我用了错误的方法来确保我的提交是正确的。暂存区域中的内容也在您的工作目录中,因此如果您想知道您的代码是正确的,您只需。。。测试一下 运行您的测试套件(如果有)、编译、运行等。如果它以您想要的方式工作,您可以提交它 当然,您可以使用分支来分离功能更改,然后在分支之间签出(当您有干净的工作目录时

我想知道是否有可能进入Git中的暂存区域(签出,不确定这个词),以确保即将提交的代码是稳定的、正确的等等

假设我修改了3个文件,它们与同一功能无关。我在集结区加了两个。如何确保我将要提交的代码可以编译


或者,我用了错误的方法来确保我的提交是正确的。

暂存区域中的内容也在您的工作目录中,因此如果您想知道您的代码是正确的,您只需。。。测试一下

运行您的测试套件(如果有)、编译、运行等。如果它以您想要的方式工作,您可以提交它

当然,您可以使用分支来分离功能更改,然后在分支之间签出(当您有干净的工作目录时,总是可以签出,只有在没有任何冲突时,才可以使用修改过的文件签出,否则您可以使用
git stash save
然后
git stash pop


在场景中,当您向暂存区域添加了一些更改,并且在同一文件的工作目录中还有其他更改时,您不能使用
git stash save--keep index
暂存更改。它将隐藏除暂存更改之外的所有内容,因此您只能测试“提交”。

不要使用您的工作目录或暂存区域一次执行多项操作。无论何时,只要你需要做一些像分号一样小的改变,就要不断地分支。提交更改并移动到其他分支。您不需要将分支推送到远程

这样,您一次只能处理一件事情,不必担心代码编译和依赖性问题


在您当前的情况下,您可以创建一个分支并在那里提交两个文件,然后将剩余的文件隐藏起来,看看它是否有效。如果是这样,您可以将新创建的分支合并到master中,并通过
隐藏pop

获取第三个文件。我不同意暂存区域在工作目录中。如果我修改一个文件并将其暂存,然后我再次修改,工作目录中的A与暂存区域中的A不同。有时不可能只处理一件事,因为更改可以相互关联,但应该单独提交。此外,登台的大块/线条与您的策略不匹配;您可以迭代地暂存“就绪”更改,然后,像Maxime一样,您希望知道暂存区域是否正确,而不考虑工作目录中的其他更改。这并不是问题的真正答案。虽然这可能很难,但我不认为一次只做一件事是不可能的。如果无法分离,则表示其相关,并应同时提交。这确实回答了您最初提出的问题,即如何知道暂存区域是否可以有效编译。后来,您在Maxine的回答的注释中添加了一个条件,即您也可以修改工作目录中的暂存文件,正如Maxine所建议的那样,您可以使用stash with
--keep index
。您弄错了用户:这是Maxime的问题,我的回答:-)哦,对不起。我甚至把这个名字拼错了它的格言,而不是马克辛。仅阅读对您答案的评论会造成误解。。。。。