Git扩展中的自动暂存

时间:2012-07-14 11:28:10

标签: c++ visual-studio-2010 visual-studio git git-extensions

我在Visual Studio 2010中使用 Git Extensions 作为加载项。它运行良好。 但是,每当我要提交到存储库时,GUI都会强制我手动选择适当的文件以添加到阶段(即使这些文件已被索引并已添加到阶段)。 我有点困惑,因为我相信已经上演的文件不需要再次选择舞台。

示例:在Git Extension的GUI中,我在使用 Commit 后将Network.cpp添加到舞台。接下来,我输入任意但有用的描述并提交暂存文件。下次更改Network.cpp时,我必须在提交到存储库后再次使用Network.cpp。

我的工作流程有什么问题吗?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

您的工作流程没有任何问题;你遇到了大多数人一开始就对临时区域(“指数”)的误解。

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

Git与众不同。使用Git,您不会将文件添加到临时区域,而是将更改添加到文件。这意味着每次更改文件时,如果要将这些更改包含在下一次提交中,则需要添加这些更改。如果不向暂存区域添加新更改,则永远不会提交。

通常你想提交所有已经改变的东西,所以使用Git Extensions每次提交时都只使用“Stage All”按钮,你会发现系统的行为与Subversion和Mercurial的行为非常相似。如果您使用命令行,则可以使用git commit -a自动添加对已跟踪文件所做的更改。