当前位置: 首页 > news >正文

svn迁移到git

通过git bash将svn迁移到git上,并保留svn的提交历史。

一、准备

1、在电脑上安装git
2、确认svn账号具备该svn地址的操作权限
3、准备将要操作的svn项目地址、以及该项目下所有提交人的账号信息(在idea工具看提交历史),将信息存放到author.txt(随便命名),信息存放的格式: 提交者svn账号=提交者git账号<邮箱>

zhangsan=zhangsan<zhangsan@qq.com.com>
lisi=lisi<lisi@qq.com>

二、操作步骤

1、首先在项目组的gitlab上创建对应的空项目,拿到该项目的git地址,如:
https://192.168.0.88:1111/web/demo.git
注意:当前帐号为管理者,避免接下来push有问题
2、切换到将要存放该git项目的父目录,打开Git Bash,例如是:d:\java\code\。
执行脚本:

git svn clone -r124245:HEAD http://192.168.0.88:81/svn/java/demo --no-metadata --no-minimize-url --authors-file=/d/java/code/author.txt demo --username=zhangsan
命令含义
-r124245:HEAD从版本号124245到最新的提交记录(idea工具svn历史记录可以查看),如果不加这个命令,默认从版本号0开始,非常费时
–no-metadata保留svn的metadata信息,快很多
–no-minimize-url如果账号没有根目录的权限,建议加上。默认是从根目录一直检索下来,如果不加的话,会因为权限问题报错:Using higher level of URL: 加上则表示只从你定义的目录检索
–authors-fileauthor.txt所在的路径,不能用windows的路径,参考git bash默认的路径方式
–username要操作svn的账号信息

3、打开本地git项目的目录,把一些不必要的配置信息删除,然后bash进入到该项目目录下,将项目关联到远程仓库,并push到远程仓库,整个过程就结束了。

git remote add origin https://192.168.0.88:1111/web/demo.git
git push -u origin master

http://www.mrgr.cn/news/14001.html

相关文章:

  • ZooKeeper 实战(六) - 分布式ID实现方案
  • 高级java每日一道面试题-2024年8月28日-框架篇[Spring篇]-你对Spring的事务管理了解多少?
  • WPF—资源的使用
  • wpf datagrid通过点击单元格 获取行列索引2.0
  • 【PGCCC】揭秘PostgreSQL内存表的隐形翅膀:深入探讨索引的原理与实现
  • DHT11 实现温湿度传感器
  • 光庭信息半年报:营收利润「双」下降,汽车软件业务竞争加剧
  • polarctf靶场[WEB]Don‘t touch me、机器人、uploader、扫扫看
  • linux系统中内存和缓冲简介
  • EmguCV学习笔记 C# 第7章 特征点检测与匹配
  • 过滤器与拦截器对比
  • java基础 之 接口
  • Nginx负载均衡SSL证书配置全指南
  • Spring框架:从依赖注入到微服务
  • 使用Hutool操作Excel的时候出现的问题(压缩比问题)
  • ## 已解决:亲测有效的 `java.nio.charset.CoderMalfunctionError` 编码器故障错误解决方法
  • Web大学生网页作业成品——VIVO介绍网页设计与实现(HTML+CSS)(1个页面)
  • 【2024年】为Python股票量化分析最新整理的免费股票数据API接口之历史数据
  • 服务器远程管理
  • C++ 设计模式——组合模式