如何为多个IDE正确存储Git文件?

时间:2019-03-30 08:17:27

标签: git github ide

我在不同的PC上使用了多个IDE,它们是VS13 / 15/17,Eclipse,Netbeans,它们都为一个新的IDE创建项目文件。

如果我不想在新PC上为一个代码创建新项目,可以将所有项目文件保存在一个存储库中吗?如果是这样,我如何组织它们以防止在工作树中产生误解?

2 个答案:

答案 0 :(得分:1)

我不确定我是否很好地解决了这个问题,您的IDE在您的项目中创建了文件(例如.idea文件或.sln文件),并且如果您克隆了项目,则会产生问题。在另一台PC上?

我认为IDE文件是特定于开发人员的,而不是特定于项目的。因此,我更喜欢将它们添加到.gitignore文件中。这样,如果我使用其他编辑器并创建所需的一些文件,则不会影响存储库。

如果您不想每次都考虑一下,则可以使用全局.gitignore

git config --global core.excludesfile ~/.gitignore-global

在这里,路径~/.gitignore-global仅是示例,您可以选择其他名称。

然后在其中添加要忽略的IDE文件。因此,在您的所有项目中,它们都会被Git忽略,并将保留在您的环境中。

我希望它会有所帮助。

答案 1 :(得分:0)

在源代码管理中存储IDE项目文件有两个问题。

首先,IDE文件往往是项目数据和用户特定数据的混合,并且您只需要提交前者而忽略后者。对于某些IDE而言,这很容易做到,而对于其他IDE而言,则很容易做到,无论如何,要了解IDE的特定方式。

第二,如果同一项目(由不同的用户或在不同的计算机上)使用了多个IDE,则最终会产生两组项目文件,这些文件很容易失去同步。 (我不是在谈论每个人都总是在代码的 this 部分中使用VS,每个人总是在代码的 that 部分中使用Idea的情况;我的意思是爱丽丝(Alice)使用Idea作为,鲍勃(Bob)将Eclipse用于代码的同一部分。)

据我所知,您似乎有后一个问题。在这种情况下,您应该查看是否可以找到一个IDE中立工具来管理项目描述,单个IDE可以从中导入该项目描述。然后,您可以仅对IDE中立的项目描述进行源代码控制。如果那不可能,那么您可能需要研究是否可以在每个模块的一个IDE上进行标准化,至少要达到“这是管理规范项目描述的一个IDE的程度,因此,如果您想使用其他东西,您可以依靠您自己将信息导入/导出到IDE中,因为您的IDE文件将不受源代码控制。”

即使每个项目都在一个且仅一个IDE中进行管理,使用尽可能不与IDE绑定的项目定义仍可能会带来好处,但是在这种情况下,您至少可以选择咨询您的IDE文档,以查看在源代码管理中应该放置哪些内容,以及不应放置哪些内容。