标签: reposurgeon

如何使用 reposurgeon 将 svn repo 转换为 git?

你能举个例子,我如何将路径添加到我的旧 svn 并从中创建一个 git 文件夹,其中包含整个历史记录和所有分支/标签?

我发现这个网站值得一试吗?它使用svnpull,我的系统上没有,我可以使用它repopuller吗?

我安装了 reposurgeon

apt-get install --no-install-recommends xmlto asciidoc unp
wget http://www.catb.org/~esr/reposurgeon/reposurgeon-3.7.tar.gz
unp reposurgeon-3.7.tar.gz
cd reposurgeon-3.7
make
make install
Run Code Online (Sandbox Code Playgroud)

(我会在没有建议的情况下安装,因为这里不需要大约 700MB)

svn git converter reposurgeon

7
推荐指数
1
解决办法
3072
查看次数

将 Git 存储库从 ISO-8859-1 转换为源代码文件的 UTF-8 编码

本周末我将使用fast-export将一个大型 Mercurial 项目转换为 Git 。我已经测试了几次,结果很好。

我们还想将我们的源代码编码(大量带有变音符号的德语注释/字符串文字)从 ISO-8859-1 转换为 UTF-8(repo 中的所有其他非 Java 文件应保持原样),并且Git 迁移让我们有机会现在就这样做,因为无论如何每个人都需要再次克隆。但是,我没有找到一个好的方法。

  1. 我已经尝试过这个评论中git filter-tree --tree-filter ...方法SO。然而,虽然这看起来很理想,但由于存储库的大小(大约 200000 次提交,18000 个代码文件),它需要的时间比我周末的时间长得多。我试过直接从具有 72 个内核的 linux VM 上的 64GB tmpfs 卷运行它(在一个高度优化的版本中,文件列表被分块,子列表被并行转换(使用GNU 并行),但它仍然会需要几天...
  2. 或者,我尝试了一种简单的方法,即在任何活动分支上单独执行转换并提交更改。然而,结果并不令人满意,因为在合并或挑选转换前提交时,我几乎总是会遇到冲突。
  3. 现在我再次运行方法 1,但不是试图重写所有分支的完整历史记录(--allas <rev-list>),而是所有提交都可以从当前活动分支到达,并且无法通过某些过去的提交到达,这(希望)是所有当前分支的前身分支(branch-a branch-b branch-c --not old-tag-before-branch-a-b-c-forked-off作为<rev-list>)。它仍在运行,但我担心我不能真正相信结果,因为这似乎是一个非常糟糕的主意。
  4. 我们可以像方法 2 一样通过正常提交切换 master 分支中的编码,但这同样会使从/到 master 的挑选修复成为灾难。它会引入很多编码问题,因为开发人员在主分支和未转换分支之间切换时肯定会忘记更改他们的 IDE 设置。

所以现在,我觉得最好的解决方案可能是坚持 ISO-8859-1。

有没有人有想法?有人提到,也许reposurgeon基本上可以使用它的transcode操作来做方法 1 ,git filter-tree --tree-filter ...但我不知道它是如何工作的。

git encoding utf-8 iso-8859-1 reposurgeon

5
推荐指数
1
解决办法
3448
查看次数

使用 reposurgeon 将多项目 Subversion 存储库迁移到 Git

我正在尝试使用 reposurgeon 将 Subversion 存储库转换为 Git,该存储库包含多个具有以下布局的项目:

<groupname>/<projectname>/{trunk,tags,branches}
Run Code Online (Sandbox Code Playgroud)

我试过这个 reposurgeon 脚本:

read <svnrepository.dump
sourcetype svn
prefer git
rebuild myrepository
Run Code Online (Sandbox Code Playgroud)

但结果是每个组都有一个分支的 Git 存储库。

有没有办法将转换限制为单个项目?

svn git reposurgeon

5
推荐指数
1
解决办法
216
查看次数

标签 统计

git ×3

reposurgeon ×3

svn ×2

converter ×1

encoding ×1

iso-8859-1 ×1

utf-8 ×1