1

我在 GIT 中使用分支时遇到的一个问题是,在切换分支时很容易导致 Visual Studio 2005 完全重建源代码,因为切换分支时时间/日期发生了变化。

我的典型布局是这样的。
svn/远程

测试

在测试和主分支之间切换时,即使它们在项目上共享完全相同的时间戳。这将导致 Visual Studio 2005 再次重建整个项目。

为了解决这个问题,我的解决方案是创建另一个 GIT 存储库,但创建一个从主存储库 c:/myPrimary 'test' 分支中提取的新存储库。这样,即使主分支和测试分支都通过额外的存储库拥有自己的文件夹,这解决了在两者之间切换时必须对源代码进行完整的重新编译。

只是检查是否有其他人遇到过这个问题以及他们提出的解决方案。请注意,源代码的完整重新编译需要 20 分钟。

4

1 回答 1

1

git 仅涉及在切换分支时实际更改的文件,因此只有包含两个分支之间不同文件的翻译单元才应在两个分支之间切换时更新其时间戳。

Visual Studio 2005 通常非常擅长增量构建,但如果您不小心管理项目的复杂性,在 C++ 中很容易构建过度相互依赖的包含路径。

您是否尝试过分析您的源文件依赖关系以查看一组经常更改的头文件是否导致大量目标文件被重建?

于 2009-10-02T06:39:57.190 回答