随笔—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

相关推荐

  • 磁盘配额

    配置配额系统     综述        •在内核中执行        •以文件系统为单位启用        •对不同组或者用户的策略不同 …

    Linux干货 2016-09-02
  • 程序包管理rpm&yum&编译安装

    centos6.6程序包管理 二进制应用程序的组成部分: 二进制文件,库文件,配置文件和帮助文件 程序包管理器:rpm rpm包管理器的前端工具:yum 程序包之间存在依赖关系 rpm的命名方式: name_VERSION_release.arch.rpm     VERSION: major.minor.r…

    Linux干货 2016-07-07
  • MySQL基础知识

    1、SQL:结构化查询语言(Structured Query Language): DDL:Data Definition Language(数据定义语言): 其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询…

    2017-11-20
  • 学以致用

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp – copy files and directories 复制文件或目录 使用格式: 单文件复制 cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在,即创建文件并复制源文件数据流; 如果DEST存在,且为非目录文件时,将覆盖…

    Linux干货 2016-10-13
  • Linux用户和组的相关管理命令(一、用户的相关命令)

    Linux是一个可以实现多用户登录的操作系统,通过su – 用户名 可以进行用户之间的切换,从而完成不同登录用户下对私有文件的操作,同时,每个用户有且只有一个主组,但是可以有零个或多个附加组,每个组可以是一个用户的主组,同时还可以是多个用户的附加组。因此,熟练掌握用户和组的相关命令十分重要。 首先,要了解用户和组的配置文件各有两个: 与用户相关的…

    2017-07-22
  •  编译安装步骤     大致过程:(源代码–预处理–编译–汇编–链接–执行)   第一步 下载安装开发工具“Development toos” 第二步 下载解压源代码包 仔细阅读“Install和 Read me” 第三步 使用./conf…

    Linux干货 2017-04-24