SVN迁移Git

SVN迁移Git

①本地SVN库转本地Git库

情况一:不想保留svn提交记录

  1. 删除svn目录文件中的.svn文件夹隐藏文件
  2. 创建远程Git仓库,并通过SourceTree等工具将Git仓库拉取下来
  3. 直接将删除了.svn文件夹的整个目录移到本地Git仓库中,提交推送即可

情况二:想保留svn提交记录和结构

1. 如果svn仓库是按照标准的tags、trunk、branches结构划分的,则git-svn会将对应的分支、标签识别存放到git的结构中。 如果不加-s,不会将tags、branch按照git的结构进行划分 。

$ git svn clone -s http://svnurl/yourrepo

2. 如果svn仓库是非标准结构的,则可以用“-T 主干名 -b 分支名 -t 标签名”参数分别指定归类。

// 其中,如果只关注主干svn提交记录,则可以将分支和标签参数省略
$ git svn clone http://svnurl/yourrepo -T trunk -b branches -t release
// 这里指定了svn库中的rpm目录是主干、branches目录是分支集,release目录是标签集,而`project1`下的其他目录会被忽视
$ git svn clone http://svnurl/yourrepo/project1 -T rpm -b branches -t release 

3.从指定svn版本记录开始恢复

// 检索从v10到现在的所有历史记录
git svn clone -s -r10:HEAD http://svnurl/yourrepo

②本地Git库跟踪远程Git库

在本地的Git仓库中,增加远程git remote 地址:

$ git remote add origin http://xxx.xxx.xxx/xxx/xxx.git

也可以在SourceTree等工具中,先添加本地Git库,然后设置远程git remote地址

备注

远程git先把master删除了,然后直接使用本地Git库作为master

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • &开发过程中离不开源代码的管理, 目地:为了解决在软件开发过程中,由源代码引发的各种蛋疼、繁琐的问题。 目前开发使...
    早起的虫儿子被鸟吃阅读 2,460评论 0 16
  • 本片内容转自CSDN http://blog.csdn.net/ithomer/article/details/7...
    五娃儿阅读 4,956评论 2 88
  • 从前读《西厢记》总是最讨厌其中的相国夫人。一座寺庙,一支叛军,两个一见钟情的年轻人;一个倾国倾城貌,一个多愁多病身...
    寒小冷阅读 334评论 8 6
  • 每天早晨上班我都会路过一个公园,从去年冬天开始我就注意到公园里每天锻炼的大妈中有一个与众不同的身影,那是一位大爷。...
    扒小怪阅读 1,581评论 0 0
  • 感恩陈老师今晚带来的课程,让我最近的负面情绪得到释放,最近太多纷杂的人和事让我在面对人和事时让自己背负太多,抢占别...
    云的翅膀_2d4d阅读 136评论 0 0