我有一个平面 svn 存储库,它看起来像:
my_repo/
??? file1.c
??? file2.c
??? file3.c
??? README
Run Code Online (Sandbox Code Playgroud)
这个 repo 没有分支或标签,我想要做的就是将它转换为 git 存储库并维护提交历史。
我试过了:
git svn clone --trunk=/ -A users.txt svn+ssh://user@svn.example.com/projects/my_repo dest_dir
我认为这会起作用,但是,当我导航dest_dir并执行时git svn fetch,它似乎没有获取任何东西。使用git log产量:
fatal: bad default revision 'HEAD'
如果我使用svn checkout svn+ssh://user@svn.example.com/projects/my_repo
它返回:
A my_repo/file1.c
A my_repo/file2.c
A my_repo/file3.c
A my_repo/README
Checked out revision 57.
Run Code Online (Sandbox Code Playgroud)
因此,存储库是活动的且可访问的。
我尝试了各种工具,包括subgit给我这个错误的工具:svn: E170003: 'stat' not implemented我认为这是因为托管存储库的服务器使用的是旧版本的 subversion。我无法控制服务器,因此无法执行更新。
我也试过使用svn2git, 使用命令
svn2git svn+ssh://user@svn.example.com/projects/my_repo --rootistrunk -authors users.txt …