2

我最近加入了一个新团队。这个团队一直在使用 Subversion 进行源代码控制。他们让我调查将源代码移动到 Git 的可能性。

这似乎是一个微不足道的练习,直到我意识到他们有大量的 svn:externals。该项目是一个大型 Java EE 项目,由多个 Web 项目组成。团队使用 svn:externals 在各个项目之间共享一些固定资源(如 css、javascript 等)。

我的问题是双重的:

  • 在我们可以考虑的一组 Java 项目中共享资源是否有更好的策略,允许我们消除 svn:externals 的必要性并使切换到 git 更简单?
  • 如果不存在这样更好的策略,那么我的替代方案是什么?

这是一个相当大的代码库(很多修订和文件),所以我想利用 git 的性能。

这是他们正在使用的相关软件堆栈:

  • 颠覆
  • Maven (2.2.1 IIRC)
  • Windows(用于开发)、AIX(用于生产)

谢谢

4

1 回答 1

2

听起来像是 Git 子模块的好案例。它们应该与svn:externals 非常相似。

摘自 Git 书:

经常发生的情况是,在处理一个项目时,您需要使用其中的另一个项目。也许它是第三方开发的库,或者您正在单独开发并在多个父项目中使用。在这些场景中会出现一个常见问题:您希望能够将两个项目视为独立的,但仍然能够在另一个项目中使用其中一个。

在 Git 书上阅读更多关于 Git 子模块的信息:http: //book.git-scm.com/5_submodules.html

于 2012-08-14T14:27:54.753 回答