为什么不建议将Eclipse项目文件夹作为Git存储库?

时间:2013-01-01 01:57:58

标签: eclipse git egit jgit

当将项目作为git共享并尝试将Eclipse项目文件夹作为git存储库时,Eclipse表示不建议这样做并且它应该在Eclipse工作区之外。

为什么?

2 个答案:

答案 0 :(得分:17)

虽然我同意将存储库保留在Eclipse工作区之外,但我仍然会在Eclipse项目根目录中创建一个git repo(如this answer中所示)。

除非你的程序由许多小的相互依赖项目组成,否则我会将一个git repo限制为一个Eclipse项目。
git repo是关于记录树结构的内容,如果该树代表一个项目,则更容易管理,标记,分支,合并(作为{ {3}})。
如果它代表多个项目,那么您不再确定“1.0”之类的标记代表Git仓库中每个项目的内容。

另外,我想将.project.classpath.settings添加到Git仓库(作为“coherent set of files”)

答案 1 :(得分:16)

来自Eclipse EGit help pages

  

将项目作为存储库的根文件夹

可能不是一个好主意      

原因是您永远无法将另一个项目添加到此存储库,因为.project文件将占用根文件夹;你仍然可以将项目添加为子文件夹,但是这种项目嵌套已知会在整个地方引起很多问题。要添加另一个项目,您必须将项目移动到存储库中的子文件夹,并将第二个项目添加为另一个子文件夹,然后才能提交此更改。

更多信息

  

将您的存储库放在Eclipse Workspace之外

是个好主意      

有几个原因:

     

新的Repository会将Eclipse工作区的完整文件夹结构视为(潜在)内容。这可能会导致性能问题,例如在提交之前计算更改时(例如,将扫描完整的.metadata文件夹);通常情况下,工作区将包含死文件夹(例如已删除的项目),这些文件在语义上与EGit无关,但不能轻易排除。

     

元数据(.git-)文件夹将是Eclipse Workspace的子文件夹。目前还不清楚这是否会导致Eclipse不必要的文件夹遍历。

     

您可以通过销毁Eclipse Workspace轻松销毁您的存储库

相关问题