繁体   English   中英

如何将SVN存储库的本地克隆转换为git

[英]How can I convert a local clone of SVN repo to git

尽管这听起来像是一个常见问题,但实际上我找不到与#SO相同的线程。

我有一个svn存储库的旧副本(从不再存在的存储库中检出-服务器已在不久前停用)。 我想签出该存储库上的提交历史记录。 我认为,由于存储库根目录中有一个“ .svn”文件夹,其中包含65 + M数据,因此应该可以这样做。

到目前为止我尝试过的(但不起作用):初始化一个新的git repo并尝试将现有的repo转换为git

# Init empty git repo git init git svn rebase -l

# Init git-svn repo rm -rf .git git svn init http://same/url/as/the/one/used/before/decommissioning/the/server git svn rebase -l

我正在尝试做的甚至有可能吗? 我正在寻找的数据甚至可以脱机使用吗?

我认为这是不可能的 本地SVN结帐没有足够的信息来充当存储库。 没有历史信息-全部在服务器上。

您需要实时服务器或svnadmin dump

工作副本不是存储库克隆。 Subversion工作副本不包含修订历史记录。 它是项目的轻量级本地副本,不能用于迁移修订历史记录。 您可以将工作副本的数据导入到新的git存储库,但其中不会包含任何更改历史记录。

  • 用Subversion术语来说, 存储库是一个服务器端数据库,被认为是单一的“真理来源”。 它是一个中央存储,您可以使用Web浏览器访问该中央存储以查看更改历史记录,并用于签出工作副本以使用版本控制的数据。

  • 工作副本是您进行工作和进行更改的工作台。 您可以使用它来操作存储库-修改数据并将更改提交到远程存储库。 工作副本通常比存储库本身要小得多,而且获取副本的速度通常也更快,因为工作副本仅包含一个项目的分支或主干(即主副本)。 任意组合的修改,可以根据需要从同一个存储库或项目中获得尽可能多的工作副本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM