我正在使用这个将我的 SVN 存储库迁移到 Git (BitBucket)教程。但是我没有使用过标准 SVN 布局所以似乎有点问题。
我的 SVN repo 是 Android 项目的简单副本。
/svn/dirname/project/app
没有trunk
、branches
和tags
子文件夹。您可以说project
等于主干。
git svn clone --trunk=/project --authors-file=authors.txt https://host/svn/dirname project
Initialised empty Git repository in /home/osboxes/GitMigration/project/.git/
Checked out HEAD:
https://host/svn/dirname/project r300
下一步应该是清理,但失败了。可能是因为我没有任何分支:
java -jar ~/svn-migration-scripts.jar clean-git
Could not retrieve the config for the key: svn-remote.svn.branches
但后来失败了,我不知道如何继续
java -jar ~/svn-migration-scripts.jar sync-rebase
fatal: ambiguous argument 'remotes/trunk': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
Error finding tracking ref for branch master
答案1
我觉得它已经修复。我做了以下事情:
- 将 SVN 存储库重新排列为标准布局
git svn clone --stdlayout --prefix='' --authors-file=authors.txt https://host/svn/dirname project
我发现了 2014 年的 attlassian 问题 #2,其中请求添加 Git 2.0 兼容性。它有 22 票,但尚未解决。有一个提示要使用参数prefix
。