【问题标题】:Git workflow: PDT + Egit on Eclipse workspace and Git bare repositoryGit 工作流程:Eclipse 工作区和 Git 裸存储库上的 PDT + Egit
【发布时间】:2013-10-31 22:40:07
【问题描述】:

我正在开发一个 Symfony 应用程序,并且我正在尝试在 Eclipse 上设置一个 Git 工作流。工作区(项目文件所在的位置)位于/home/sfprojects/testing/,Git 存储库位于/var/git/testing

反复阅读我能找到的所有 Git 资源(包括 Scott Chacón 的“Pro Git”和 EGit 用户指南(http://wiki.eclipse.org/EGit/User_Guide 等),很容易理解为什么 Git 存储库和Eclipse 工作区不应该共享同一个目录,现在我最大的困惑是我看不到一种方法可以将两者分开。

一旦我通过向导创建了 Git 存储库,所有项目文件都会自动从 Eclipse 工作区移动到 /var/git/testing/testing/ 上的工作目录。令我大吃一惊的是,新创建的 Git 存储库变成了 Eclipse 上的新项目工作区,其父目录中有 .git 目录。这不是一个明显的矛盾吗?如果我将鼠标指针悬停在“在项目的父文件夹中使用或创建存储库”选项上,则会出现一个非常清晰的帮助标记,其中包含以下文本:

选中后,此向导将尝试在所选项目的父文件夹层次结构中查找或创建存储库。

通常,新创建的项目位于 Eclipse 工作区中,因此以这种方式创建的存储库最终也会出现在 Eclipse 工作区中。

由于 EGit 用户指南中解释的几个原因,不建议这样做。

所以,经过一番研究,我的逻辑结论是创建一个 Git 裸存储库,然后将其链接到位于工作区中的项目......错了!裸存储库不适用于 Eclipse 项目。

我需要对此进行认真的解释。

【问题讨论】:

  • 用户指南建议不要这样做,因为有些人刚刚删除了他们的工作区文件夹(或包含内容的项目),然后惊讶地发现他们的 Git 存储库数据也被删除了。
  • 是的,我知道,我已经读了十遍了。但这只是不要将 Git 存储库与 Eclipse 工作区混为一谈的四个(或五个)原因之一。

标签: eclipse egit git-bare


【解决方案1】:

似乎我在 EGit 用户指南和 EGit 将项目目录移动到 Git 存储库的行为中认为自相矛盾的地方弄错了。

当项目文件作为 Git 存储库的工作目录移动时(与同一级别的 Git 元数据文件夹),它们仍然在 Eclipse 控制下,作为 Eclipse 工作区。但正如 EGit 用户指南所说(http://wiki.eclipse.org/EGit/User_Guide#Eclipse_Workspace_and_Repository_working_directory),.git 元数据文件夹不应该进入工作区......那是我错的时候,因为它是一个 Eclipse 项目/Git 工作文件夹......但它不是一个 Eclipse 工作区,因此 Git 元数据文件夹不可编辑,就像任何其他源项目文件一样,仅用于 Git(当然还有 EGit Eclipse 插件)。

【讨论】:

    猜你喜欢
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 2013-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    相关资源
    最近更新 更多