与Git的Symfony2项目:最佳方法?

Fre*_*dro 5 git symfony

我目前正在使用Git从使用SVN的symfony 1.4转移到Symfony2.我是Git的新手,自从一周以来已经阅读了很多文档,但不幸的是,我无法找到一种工作方式,因为我之前使用过SVN.实际上,我理解这两种SCM的方法不同.

让我解释一下我如何使用sf1.4和SVN.我的存储库结构是这样的:

root    /* Main repository */
  branches
  tags
  trunk
    apps
      backend
      frontend
    cache
    [...]
    lib
      [...]
      vendor
        symfony    /* SVN external to symfony sources */
    log
    plugins
      sfThemePlugin    /* SVN external to sfThemePlugin */
      xxMyPlugin    /* SVN external to a plugin repository I develop */
    test
    web
Run Code Online (Sandbox Code Playgroud)

通过这种方式,我能够:

  • 使用供应商,插件和我自己的插件在我最喜欢的IDE中加载整个项目
  • 能够从各自的存储库更新symfony,插件和其他供应商
  • 使用我自己的插件并在不切换项目的情况下提交它们

现在我想对Symfony2项目和Git做同样的事情.问题是:

  • Sf2 Git存储库在其根目录中包含一个'src'和一个'test'文件夹,因此我的项目存储库不能像sf1.4一样包含Sf2源,如果我在'src'和/或'中添加一些文件而不会产生冲突测试'到我的项目或想要更新sf2源.
  • 我希望我的捆绑包有自己的存储库,能够处理它们,切换分支,提交和推/拉而不必切换项目,提交和独立推送捆绑源,然后更新我的主项目子模块.

这样做的最佳方法是什么?

Jul*_*rin 0

我认为存在混乱。

当您谈论 src 和测试文件夹时,我猜您正在使用此存储库: https: //github.com/symfony/symfony而不是“标准”版本。在这种情况下,不要将内容放在存储库根目录中,而应放在供应商/symfony 文件夹中。

因此,您将通过子模块管理捆绑包和供应商来获得您想要的结构。