Java Egit工作目录与Eclipse中的项目

Java Egit工作目录与Eclipse中的项目,java,eclipse,git,github,egit,Java,Eclipse,Git,Github,Egit,我是Eclipse的长期用户,但对Git/Egit不熟悉。最近我一直在尝试使用Egit,因为我想使用GitHub与许多项目协作。我想处理的项目不是特定于Eclipse的项目,但我仍然希望设置一个工作流,以便在Eclipse中处理它们 似乎有很多东西需要结合在一起: 远程存储库(在GitHub上) 本地存储库(在我的文件系统中的某个位置) Git工作目录 我想要使用的Eclipse项目(包括源代码树之外的内容,如Eclipse项目文件、Maven配置、构建文件夹等) 它们之间的关系如何?我的工作流

我是Eclipse的长期用户,但对Git/Egit不熟悉。最近我一直在尝试使用Egit,因为我想使用GitHub与许多项目协作。我想处理的项目不是特定于Eclipse的项目,但我仍然希望设置一个工作流,以便在Eclipse中处理它们

似乎有很多东西需要结合在一起:

  • 远程存储库(在GitHub上)
  • 本地存储库(在我的文件系统中的某个位置)
  • Git工作目录
  • 我想要使用的Eclipse项目(包括源代码树之外的内容,如Eclipse项目文件、Maven配置、构建文件夹等)
  • 它们之间的关系如何?我的工作流程应该是什么

    特别是:

    • 我真的需要一个本地存储库,还是可以直接使用远程存储库(比如SVN)
    • Git工作目录也可以是Eclipse项目吗?或者这是个坏主意
    • 我的推/拉/取等工作流程通常是什么
    • 如果我在Eclipse项目中使用Maven进行依赖关系管理,但不希望所有Maven特定的东西都提交给SCM,那么这能起作用吗
    我想我很想从成功完成这项工作的人那里得到一些合理的建议

    我真的需要一个本地存储库,还是可以直接使用远程存储库(比如SVN)

    Git就是在本地存储库上工作,并在必要时将其推到其他地方

    Git工作目录也可以是Eclipse项目吗?或者这是个坏主意

    如果它这样排列,那么是的。这就是我管理项目的方式

    我的推/拉/取等工作流程通常是什么

    当你觉得你已经做出了足够的值得推动的承诺(有时只有1个)时,你就会推动。当您想要处理其他人推动的更改时,您会拉动

    有关不同类型工作流的官方文档,请参见

    如果我在Eclipse项目中使用Maven进行依赖关系管理,但不希望所有Maven特定的东西都提交给SCM,那么这能起作用吗


    通常您只需提交pom.xml。其他任何内容都是用户特定的设置。尽管如此,如果我克隆了您的存储库,但无法进行“mvn编译”,那么就有问题了。

    +1谢谢Jeremy,这是一个很好的建议!还有一个简单的问题,如果我参与的项目不使用Maven(即,出于某种原因,他们没有pom.xml),那么是否仍然可以使用Maven使用我自己的pom.xml来管理依赖关系?还是我被卡住了?是的,你可以!您可以将该项目设置为普通Maven项目。但是,我会有一个
    .gitignore
    (您必须提交),它专门忽略任何特定于Maven的文件和目录,例如
    pomx.xml
    target/
    ,并防止您意外提交它们。您可能还希望包含Eclipse内容,例如
    .settings/
    .project
    .classpath