我目前正在从使用SVN的symfony 1.4移动到使用Git的Symfony2。我是Git的新手,并且自从一周以来阅读了大量文档,但不幸的是,我无法找到像以前一样使用SVN工作的方式。事实上,我明白这两种SCM的做法是不同的。与Git的Symfony2项目:最佳方法?
让我们解释一下我如何使用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
这样,我就能够:
- 加载整个项目中我最喜欢的IDE与供应商,插件和我自己的插件
- 懂从他们各自的软件仓库更新symfony,插件和其他供应商
- 在我自己的插件上工作并提交它们而无需切换项目
现在我想对Symfony2项目和Git做同样的事情。这些问题是:
- 的Sf2的Git仓库包含了“src”中,并在其根,所以我的项目库不能包含Sf2的来源我sf1.4做,而不会产生冲突,如果我添加了一个“测试”文件夹一些文件在'src'和/或'测试'到我的项目中,或者想要更新sf2源文件。
- 我希望我的软件包拥有自己的软件仓库,能够在分支上进行切换,提交和推/拉,而无需切换项目,独立提交并推送软件包源,然后更新我的主项目子模块。
什么是最好的方法来做到这一点?