为什么 Git 中会忽略 IDE 特定的项目文件?

2024-04-01

我看到 Github 上发布的许多项目都有一个.gitignore文件明确排除与 IDE 相关的控制文件。这些控制文件广泛用于定义项目及其依赖项。这些可以是.sln对于 .NET 或.project对于 Eclipse。

我想问为什么这种做法被广泛应用或被认为是一种好的做法,考虑到我同意实现 IDE 中立性(不要将开发人员绑定到特定的 IDE)一般来说是一个好的原则。

相反,这些控制文件通常规定多个配置中的项目依赖关系、配置或编译变量(这是.csproj文件为例)。

我见过大量的开源项目忽略 Eclipse 文件,但是到目前为止,我不可能在没有项目文件的情况下建立开发环境(即使我从现有代码创建项目,或者创建一个新项目并导入代码,我总是遇到很多编译错误)。

如果项目文件存在于存储库中,那么通过“下载代码、导入项目并编译源代码”来设置开发环境将非常简单,但它显然会将开发人员绑定到特定的 IDE(这并不好笑) 。

标准化或迁移项目文件超出了问题的范围。

那么,从外部贡献者的角度来看,如何为自己从Github下载源代码的项目搭建工作和编译的项目环境呢? (克隆所有子模块后,如果需要)

只是为了挑选one示例项目我想导入到Eclipse中,分析并稍微修改,here https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server it is.


请注意csproj文件是not特定于 IDE,而是形成基本项目结构和构建步骤.NET项目。即使您切换到完全不同的 IDE(例如 SharpDevelop),您仍然需要它们来运行项目。所以,一般来说,这些不应该出现在.gitignore文件。仅应排除特定于用户或 IDE 的内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Git 中会忽略 IDE 特定的项目文件? 的相关文章

随机推荐