我有一个存储在SVN存储库中的网站。我被要求从头开始完全重写它,我已经完成了尚未受版本控制。
我应该将新版本合并到网站的现有存储库吗?
由于它是一个全新的版本,它具有与存储在存储库中的现有站点不同的文件和目录结构,我可以想象这在尝试合并时是一个问题。
我要求合并的唯一原因是因为将项目的所有历史保存在存储库中是不是一种好的做法?
与评论相关
似乎人们认为我错过了这一点,但我可以告诉你我没有。我已经创建了一个全新的站点,在代码,目录结构等方面不会有任何不同。我决定从一个空目录(干净的画布)处理这个项目,然后在项目结束时导入到存储库中。
答案 0 :(得分:3)
如果你在没有使用版本控制的情况下重新编写它,我认为你有点错过了这一点。
你可以做到的一种可能的方法是分支原始版本,使用该分支逐步提交你的更改,然后在完成后合并回主干。
既然你已经完成了它,你可能最好将它作为一个不同的版本保存。
答案 1 :(得分:1)
创建新存储库。如果重写的应用程序没有利用任何原始代码库,那么尝试合并它们就没有任何好处。创建一个新的repo,创建新的构建和部署脚本,并使旧脚本落日。把它作为一个经验教训,并在下一次创建新版本。
答案 2 :(得分:1)
正如其他人所说,理想情况下,新工作将在源头控制下完成。即使是单个开发人员也可以从恢复,分支和排除外部的能力中受益。
继续,我将旧项目的主干移动到标签中,然后将新项目的当前状态移动到主干中。这将保留原始项目的修订历史记录,并将新项目置于应有的位置。
答案 3 :(得分:0)
你可以从重写开始处理原始回购,这不是问题。
您可以尝试合并,但这可能会非常困难。您还可以为新版本创建新的仓库。
答案 4 :(得分:0)
我认为答案实际上取决于SVN如何用于当前网站。如果SVN用作处理网站更新和部署的方式,并且很难改变环境的配置方式,那么您可能需要尝试合并,或者进行一次删除当前内容并添加内容的提交。 / p>
我认为更好的方法是将您的代码导入新的仓库,或者至少在现有仓库中的不同分支,然后重新定位网站以从新位置而不是现有位置拉出。