随笔—SVN仓库转换为Git仓库

假设需要转换的SVN仓库地址为:https://tmp/svn

1、使用git svn clone命令开始转换

$ git svn clone https://tmp/svn -T trunk -b branches -t tags
#git svn clone会将整个SVN仓库导入到一个本地仓库中,
#-T trunk -b branches -t tags告诉Git,需要clone的SVN仓库的基本分支和命名法则
   #如SVN里的trunk,等同于Git里的master分支,整条选项可以使用-s代替
$ git svn clone https://tmp/svn -s   #此命令与上面的效果一样

2、Clone完成后,使用git show-ref命令查看git仓库的基本情况

$ git show-ref
f9e1af7a36109cdfb7934d2e9d9e7f7375609e43 refs/heads/master
f9e1af7a36109cdfb7934d2e9d9e7f7375609e43 refs/remotes/origin/HEAD
f9e1af7a36109cdfb7934d2e9d9e7f7375609e43 refs/remotes/origin/master
131ecb795ceb25ae7645b5eca041bad9c455f95b refs/remotes/origin/test

3、转换SVN仓库的svn:ignore属性到Git仓库的.gitignore文件

$ git svn create-ignore

4、 转换SVN的标签为Git标签

 $ cp -Rf .git/refs/remotes/tags/* .git/refs/tags/
 $ rm -Rf .git/refs/remotes/tags

5、 转换SVN的分支为Git分支

$ cp -Rf .git/refs/remotes/* .git/refs/heads/
$ rm -Rf .git/refs/remotes

6、最后把转换完成的本地Git仓库推送到Git服务器上

$ git remote add origin remote_address
$ git push origin master --all

SVN那边所有的标签和分支都可以变更到了Git服务器里了。

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21199

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-04 11:28
下一篇 2016-07-04 11:29

相关推荐

  • Sqlserver2012(主从复制)共享同步日志备份恢复

    SQL Server 2012相对于SQL Server 2008来说,无论是性能还是功能都有一个相当大的提高,甚至可以用“革命”来形容这一次升级。SQL Server 2012使 SQL Server 跻身于企业级数据库行列。在数据高可用性方面,SQL Se…

    Linux干货 2015-10-31
  • HAProxy浅说

    HAProxy浅说:    HAProxy响应码:        200:请求正常,响应正常,也就是正常响应码     301:配置使用的重定向,以下都是有关于重定向的一些响应码,不做解释     302:    &nb…

    2017-05-18
  • 马哥教育网络班21期第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who | cut -d" " -f 1 |sort |uniq 2、取出最后登录到当前系统的用户的相关信息。 last | head -…

    Linux干货 2016-07-29
  • 马哥教育网络20期+第4周作业博客

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 答:cp -a /etc/ske1 /home/tuser1 && chown -R go-rwx /home/tuser1 2、编辑/etc/group文件,添加组hadoop。 答:echo "…

    Linux干货 2016-09-05
  • 搭建基于http的本地yum源服务器

    概述 yum相较于rpm,能够更好地解决安装软件时的依赖包问题,使用yum安装更简单更方便。搭建本地YUM源服务器,可以避免升级安装软件时占用公网带宽;有了本地YUM源服务器,可以解决无法连接Internet的其他YUM客户端的软件升级和安装。 本文主要介绍了以下内容: 通过编译Apache源码包安装httpd服务; 搭建基于HTTP的yum源服务器; 将I…

    Linux干货 2016-08-24
  • 文本处理grep

    grep:文本过滤(模式:pattern)工具grep, egrep, fgrep【适合处理比较大的文本】(不支持正则表达式搜索) sed:stream editor,文本编辑工具 awk:Linux上的实现gawk,文本报告生成器 grep(Global search 全局搜索 Regular expression 正则表达式 and Print out …

    Linux干货 2017-05-09