在我们公司中,我们曾经使用SVN。开发人员过去经常保留每个分支以保留提交历史记录,因为删除该分支时,即使将其合并到主干,它也会丢失。
大约一年前,幸运的是我们切换到了Git。大部分迁移都进行得很顺利,但是在我们的某些存储库中,缺少分支合并的信息。但是,并非针对所有分支机构。我认为这是在SVN合并不是在根目录上而是在子目录中完成的时候发生的,这是非常混乱的恕我直言。
不,我们周围有几个旧分支,我们不能删除,因为我们不想丢失提交历史记录。实际的代码已合并,但Git对此一无所知。有没有一种方法可以将某种合并信息添加到git历史记录中的提交?
我的SVN存储库如下所示:
Trunk ---[1]---------[3]---------[5]
Branch1 \---[2]---/ /
Branch2 \--------------[4]--/
但是迁移的Git存储库看起来像这样:
Master ---[1]---------[3]---------[5]
Branch1 \---[2]---/
Branch2 \--------------[4]---
原始SVN信息库中的合并是在提交3和5中进行的。出于我不知道的原因,Git将提交3识别为合并,而提交5则不是。我想知道是否有一种方法可以告诉Git提交5也是合并提交。
答案 0 :(得分:0)
是的,希望您可以使用Tagging
不过,在迁移之后,您需要确保git中没有进一步的提交。
从上一次提交开始,您可以按照以下命令进行操作
git tag -a SVN -m "Migration commit"
git push origin --tags
您可以使用以下命令进行检查,
git tag
您也可以随时签出该提交,直到标签存在。