Delphi git 中的 DCU 文件?

Delphi DCU files in git?

注意:我没有 Delphi 编程经验。

我的问题:

-我想将同事的旧 Delphi 项目放入 git 存储库。

-我读到 DCU files are compiler generated 甚至发现一个 .gitignore 模板实际上忽略了这些文件。

-将所有内容放在一起并克隆 repo 后,Delphi 编译器抱怨新克隆中缺少 DCU 文件。

-当我将 DCU 文件添加到 git 时,一切都可以正常编译。

-DCU 文件(至少大部分)在构建过程中被修改。

-显然,DCU 文件弄乱了 git 历史并使 diff 难以阅读,但不编译的项目是不可接受的。

这里出了什么问题?需要DCU文件编译时,代码是否有错误?编译器在构建过程中要求文件是否正确?非常感谢任何帮助。

Delphi 程序是通过将您需要的 DCU 链接在一起而制作的。 pas 文件将被编译为 dcu 文件。

如果对于某个程序,您没有所有的 pas 文件,但您有 DCU 文件,那么它仍然可以编译。

所以我会尝试以下操作:尝试通过删除所有已修改的 DCU 文件来编译您的项目。

通过这种方式,您可以找出哪些 DCU 文件有源代码,哪些没有。

问题确实是第 3 方库在实际源中,就像 Turrican 和 Rudy Velthuis 提到的那样。编译项目向我们展示了哪些 dcu 文件来自第 3 方,然后我们必须为每个依赖项决定如何处理它(我们摆脱了一些,一些不得不留下,因为遗憾的是无法获得源代码)。 Rudy Velthuis 的评论对这里帮助很大。