Git扩展中的自动暂存

Auto-stage in Git Extensions

本文关键字:扩展 Git      更新时间:2023-10-16

我正在使用Git Extensions作为Visual Studio 2010中的外接程序。它工作得很好。然而,每当我要提交到存储库时,GUI都会强制我手动选择适当的文件来添加到阶段(即使这些文件已经被索引并添加到阶段)。我有点困惑,因为我认为已经上演的文件不需要再次选择舞台。

示例:在Git扩展的GUI中,我在使用Commit之后将Network.cpp添加到后台。在下一篇文章中,我键入任意但有用的描述,并提交暂存文件。下次更改Network.cpp时,我必须在提交到存储库后再次暂存Network.cpp。

我的工作流程中有什么完全错误的地方吗?

提前感谢您的帮助。

您的工作流程没有任何问题;你会遇到大多数人最初对暂存区("索引")的误解。

使用Subversion和Mercurial,一旦您告诉系统跟踪文件,它就会在每次提交时检查该文件中的更改。对跟踪文件的任何更改都会自动引起注意。

Git不同。使用Git,您不会将文件添加到暂存区,而是将更改添加到文件。这意味着每次更改文件时,如果希望在下次提交时包含这些更改,则需要添加这些更改。如果您不将新的更改添加到暂存区域,它们将永远不会被提交。

通常你想提交所有更改的内容,所以使用Git扩展,每次提交时只需使用"Stage All"按钮,你就会看到系统的行为与Subversion和Mercurial几乎相同。如果你使用命令行,你可以使用git commit -a自动添加对跟踪文件所做的更改。