Svn 如何处理两个项目,一个包含另一个?

Svn 如何处理两个项目,一个包含另一个?,svn,Svn,如果您为脚本(如购物车)设置了SVN回购,您将如何处理将使用购物车但也包含自定义功能的站点?您需要对自定义零件进行源代码管理,因此需要添加新的repo。您是否将脚本repo复制到特定于站点的脚本?如果您这样做了,并且错误修复已应用于脚本,那么您还必须将它们应用于此项目。有一个从两个位置获取代码的自定义构建脚本会更好吗?只有当被修改的代码不是第一次回购的一部分时,这才有效。为此,我将使用。这才是真正的目的 摘录: 有时,构建一个由多个不同签出组成的工作副本非常有用。例如,您可能希望不同的子目录来自

如果您为脚本(如购物车)设置了SVN回购,您将如何处理将使用购物车但也包含自定义功能的站点?您需要对自定义零件进行源代码管理,因此需要添加新的repo。您是否将脚本repo复制到特定于站点的脚本?如果您这样做了,并且错误修复已应用于脚本,那么您还必须将它们应用于此项目。有一个从两个位置获取代码的自定义构建脚本会更好吗?只有当被修改的代码不是第一次回购的一部分时,这才有效。

为此,我将使用。这才是真正的目的

摘录:

有时,构建一个由多个不同签出组成的工作副本非常有用。例如,您可能希望不同的子目录来自存储库中的不同位置,或者可能来自不同的存储库

幸运的是,Subversion提供了对外部定义的支持。externals定义是本地目录到URL的映射,可能是版本化资源的特定版本。在Subversion中,您可以使用
svn:externals
属性在组中声明外部定义


在您的情况下,您将使用购物车项目作为自定义项目的外部。

更改购物车上的登录方法以使用自定义功能是否会被检入到原始位置?这是您必须安排项目以支持此操作的地方。据我所知,你的购物车是你的共同项目。可以将其视为函数库或某种dll。它可用于您的定制,但也可能用于其他项目。您的购物车库将具有基本功能,您的定制项目将具有其特定功能(即定制)。如果您修改了购物车项目中的某些内容,它必须是通用的,它必须服务于所有其他项目。一旦你设置好了这个,你的自定义项目将在购物车项目内,并且可以从那里提交对购物车的修改。如果你覆盖了什么呢?原始版本需要保留,但项目需要修改版本。这在很大程度上取决于您的平台。外部项目是指向另一个项目(或另一个或同一个项目的一部分)的指针,使其看起来只属于当前项目。如果您在外部提交更改,它将更改
svn:external
另一端的项目。有几种语言可以重写函数和继承类,这些函数和类可以很好地处理这个问题,但不可否认的是,并不是所有的。那么,你让它工作了吗?我很想知道……:)