Sam*_*nen 8 ide c++builder c++builder-xe
我们有一个C++ Builder XE项目(VCL Forms Application),里面有几十个表单和单元.每当添加,删除或重命名属于项目的文件时,IDE都应该做两件事:
但是,IDE不是仅进行必要的更改,而是对现有的USEFORM和CppCompile记录进行洗牌,即使它们不受更改的影响.如果我添加一个单元(cpp和头文件),即使不需要对项目源进行任何更改,也只需要对cbproj文件进行任何更改,USEFORM都会被洗牌.
我没有看到新订单如何形成的具体模式.如果我编辑或重命名一个单元,大约一半的USEFORMs似乎改变了位置,只改变了一对或没有CppCompile记录.如果在两台不同的机器上对项目副本进行了更改,则大多数更改似乎都相似,但并非全部.这表明重新排序不是随机的.
使用Subversion合并更改时,该行为会导致问题,因为它会强制手动解决更改顺序造成的冲突.
所以问题是:什么可能导致上述行为以及如何摆脱它?
我还没有找到解决这个问题的正确方法,但这里有一个简单的方法可以让它稍微不那么烦人:
采用绝不将 IDE 生成的随机更改提交到版本控制存储库的策略。每当您对代码进行更改而触发文件混合时,请恢复ProjectName.cpp和中所有不必要的更改ProjectName.cbproj。此时它仍然相当容易,因为您知道文件的哪些部分实际上应该更改。这样,体力劳动就可以在仍需要最少工作量的情况下进行。此外,该工作只需执行一次,而不是保持更改不变,在这种情况下,每次有人合并更改时都必须重复该工作。
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |