该应用程序是使用 Sencha Architect 开发的,它使用大量辅助文件来管理各种与 IDE 相关的东西(导出路径、IDE 的版本控制等)。
每次团队成员在 Sencha Architect IDE 中打开项目时,其中一些文件都会更改。
举一个特别烦人的变化的例子,考虑exportPath
Architect 生成的*.xds
文件中的属性。我将选择一个服务器,将其发布到特定路径,其他团队成员将具有不同的服务器/路径配置。
在我们的代码库中,我非常希望拥有 IDE 文件:
- 在单独的存储库中,
- 在子模块中(是的,特定于 git,我知道)或
- 驻留在用户机器上,而 VCS 不会注意到它们的变化。
这里要注意的关键是,Sencha Architect 期望文件位于与项目相关的特定位置,因此 IDE 文件必须与普通源文件位于同一位置。
此外,使用 .gitignore 也不是一种选择,因为 Sencha Architect 会在其中一些文件中写入对其他团队成员正确打开它们至关重要的信息。例如,当打开一个项目时,Sencha Architect 可以决定将项目升级到一个更新的版本(如果你想打开项目,它是非可选的),并且在更新过程中,IDE 会修改一些源-代码文件。其他团队成员必须知道版本升级才能正确打开项目。
这个 SO question为 Sencha 使用的复杂格式提供了一些背景。我原谅我在评估 Sencha Architect 架构时的负面语气,但他们似乎把一个好主意(使用元数据和代码生成)做得太过分了(使所有优秀的 unix 工具的使用无效,包括 git)。
这里的首选方法是什么?为什么?