我即将使用git svn clone -s svn:// xxx从svn repo(在centos上)克隆代码,然后因奇怪的问题而中断,错误信息如下:
Following parent with do_switch
Successfully followed parent
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/SVN/Core.pm line 584.
Network connection closed unexpectedly: at /usr/libexec/git-core/git-svn line 2693
然后我使用
继续这个克隆过程 time git svn fetch -r HEAD
所有事情看起来都很顺利,并最终成功克隆了svn repo:
W: -empty_dir: trunk/src/os/win32/ngx_gui.c
W: -empty_dir: trunk/src/os/win32/ngx_gui.h
W: -empty_dir: trunk/src/os/win32/ngx_gui_resources.h
W: -empty_dir: trunk/src/os/win32/ngx_shared.h
W: -empty_dir: trunk/src/os/win32/ngx_types.h
r4817 = 7b58fc00b5b8ebb0544053ecf63e53b28935f15b (refs/remotes/trunk)
Auto packing the repository for optimum performance. You may also
run "git gc" manually. See "git help gc" for more information.
Counting objects: 12449, done.
Compressing objects: 100% (12177/12177), done.
Writing objects: 100% (12449/12449), done.
Total 12449 (delta 9475), reused 0 (delta 0)
Checked out HEAD:
svn://svn.nginx.org/nginx/trunk r4817
real 0m9.630s
user 0m6.015s
sys 0m1.870s
奇怪的问题是我的本地git repo中没有从svn repo克隆的标签:
[root@home nginx]# git branch
* master
[root@home nginx]# git tag // no tags at all:(
[root@home nginx]# svn ls svn://svn.nginx.org/nginx/branches | wc -l
7
[root@home nginx]# svn ls svn://svn.nginx.org/nginx/tags | wc -l
388
实际上svn repo中有388个标签,那么如何修复我的本地.git repo?
我应该从远程svn服务器重启git clone吗?
我尝试了很多次,同样的问题:(
答案 0 :(得分:2)
基本上git-svn不支持将标签作为Git标签。要将SVN标签转换为Git标签,您可以使用:
但请注意:只有第一个和第三个解决方案允许您将标签推送到服务器以便连接到SVN标签。使用git-svn,你应该使用额外的“git svn branch”命令。