我正在使用一个大型(数千个源文件)公共项目,其中包含少量(十几个源文件)本地修改和添加。本地修改与大项目的其他用户无关。该项目使用svn,就像我们自己的项目一样。我希望能够在项目更新时从项目中获取更新并合并我们的更改;我还希望我们的更改保持在源代码管理之下。
目前,我只是在需要时svn更新大项目的工作副本,将我们的更改签出到不同的目录中,并将我们的更改复制到大项目中的相应目录中,并进行一些手动协调。修改。这是可行的;它很少改变,没什么大不了的,这种方式很有效。但是,如果我们的事情或他们的事情变得更频繁,那就不切实际了。还有更好的方法吗?
答案 0 :(得分:2)
您确实想要使用单个存储库,分支现有项目来创建您的版本,然后使用该分支。当主版本发生变化时,您可以将他们的更新合并到您的分支中(因为您只会获得自上次合并以来所做的更改,手动合并2棵树会更容易)
如果您无法将项目添加到主仓库,并且必须维护自己的项目,则需要svk来查看。
答案 1 :(得分:1)
您应该考虑为您进行特定修改。这是svn书中关于branching的章节。
答案 2 :(得分:1)
在不知道你为什么这样做的细节的情况下,它宁可限制潜在的建议,但我认为这对你使用SVN来说是好的。 Git旨在处理这类事情,但是如果你不能在较大的项目中添加一些文件,那么你肯定无法改变整个源代码控制系统。
我希望以其他人拥有它们的方式将这些文件添加到主干,但忽略它们。例如,文件中有一个属性可以更改构建脚本以获取这些文件,并忽略其他所有文件。
答案 3 :(得分:0)
你可以查看svk。已经有一段时间了,所以我不能给你详细的咒语。