随笔—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
下一篇 2016-07-04

相关推荐

  • 常用大数据词汇中英文对照表

    A 聚合(Aggregation) – 搜索、合并、显示数据的过程 算法(Algorithms) – 可以完成某种数据分析的数学公式 分析法(Analytics) – 用于发现数据的内在涵义 异 常检测(Anomaly detection) – 在数据集中搜索与预期模式或行为不匹配的数据项。除了“Anomalies”,用来表示异常的词有以下几种:outlie…

    Linux干货 2015-03-10
  • Linux的哲学思想

    Linux的哲学思想 一切皆文件 不管是普通的文件、目录,还是跟硬件相关的字符设备、块设备、套接字等在Linux中都被当作文件来进行统一的操作管理。 单个程序完成简单的功能,复杂的功能由多个程序组合而成 单个程序只实现简单功能,保证了其高效运行,而复杂功能由多个简单程序组合而成,也能保证一定的高效性。 尽量避免与用户交互 程序从启动开始到结束不需要用户参与,…

    Linux干货 2017-07-02
  • 网络25期第一周作业

    一、计算机硬件的组成及功能 1、控制器       控制器负责从存储器中取出指令,并对指令进行译码。控制器主要是由指令寄存器、译码器程序计数器、操作控制器等组成。 2、运算器      运算器又称算数逻辑单元,是计算机进行算术计算和逻辑计算的部件。 3、存储器 &nbs…

    Linux干货 2016-12-06
  • find命令、归档压缩工具、xargs、exec、tar、xz、cpio

    find命令、归档压缩工具、xargs、exec、tar、xz、cpio find命令 Linux中的文件查找工具常见的有locate和find以及whereis.他们适用于不同的场合,如whereis只能用于搜索程序的二进制文件、源代码文件和man手册等相关文件,find和local能够查找磁盘上的所有文件(不包括proc和sys目录下的虚拟文件)。fin…

    Linux干货 2016-08-18
  • parted使用说明

    一.为什么使用parted命令     传统的MBR(Master Boot Record)分区方式,有一个局限:无法支持超过2TB的硬盘分区(单个分区超过2TB)。     GPT(GUID Partition Table)的分区表很好的解决了这个问题,但在Linux系统中,传…

    Linux干货 2015-04-13
  • 集中管理利器-puppet快速入门-上

    带着问题来学习 Ø  从如下内容来看,如何自定义安装用户想要的东西呢?                                        …

    Linux干货 2015-04-22