4

我们正在将旧的 SVN 存储库迁移到 Git。这与svn2git配合得很好。现在我们想专门在 git 上工作,但需要将任何新的 git 提交镜像到旧的 SVN 存储库。这是必要的,因为一些生产系统仍然通过 SVN 部署。

所以我尝试git svn在我之前运行的同一个存储库上使用svn2git。我不是专家(还),但我认为,这样的事情应该可以解决问题:

$ git svn dcommit --interactive
Unable to determine upstream SVN information from HEAD history.
Perhaps the repository is empty. at /usr/lib/git-core/git-svn line 780.

我还尝试获取有关导入的 SVN 数据的一些信息:

$ git svn info
Unable to determine upstream SVN information from working tree history

因此,似乎svn2git做了一些魔术并git svn处于“未配置状态”。据我所知,git 必须保留一些引用以将 SVN 提交映射到 git 提交。相反的命令svn2git --rebase起作用:它获取任何新的 SVN 提交并将它们应用到 git repo。所以数据似乎在那里并且可供svn2git(AFAIK基于git svn)使用。

那么我怎样才能git svn工作呢?还是有另一种方法可以将 git 提交从那个新的 repo 反向移植到 SVN(无需从头开始)?

4

1 回答 1

1

尝试“git svn rebase”。

我遇到了完全相同的问题,并使用了托管@vhttps://github.com/nirvdrum/svn2git 的包装脚本。请花点时间阅读SVN 到 GIT 迁移失败,使用 svn2git

于 2013-07-22T09:45:43.997 回答