SVN 迁移到git记录

日前进行了SVN迁移到git的操作,历时两天,保留了原有commit记录,现将过程记录如下,以供朋友们参考。

1,复制出SVN仓库文件

文件结构

仓库文件的结构如上图所示。

2,搭建本地仓库, 因为本人SVN服务器上的www服务器是ningx,无法再安装apache,所以将仓库复制下来,再本地虚拟机上安装了apache服务器, 1),安装apache服务器

2),安装subversion服务, 使用apt-get install subversion命令直接安装服务,安装完之后找到下边两个文件,

``

mod_dav_svn.so

mod_authz_svn.so

`` 将上边两个文件放入apache的modules问件内

3),配置SVN的http访问,

	<Location /svn>
	   DAV svn
	   SVNPath /www/repos
	   AuthType Basic
	   AuthName "Authorization SVN"
	   AuthUserFile /www/server/apache/bin/passwd
	   AuthzSVNAccessFile /www/repos/conf/authz
	   Satisfy all
	   Require valid-user
	</Location>

apache的配置文件引入这两个so文件

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

如上图所示

我使用了域名www.svn.net svn的http访问地址就是 http://www.svn.net/svn/

4),/www/server/apache/bin/passwd文件的生成 使用过的是apache的命令,具体命令如下: /www/server/apache/bin/htpasswd -cb filename username password 我的命令是 ./htpasswd -cb password admin 123456 随后在/www/server/apache/bin/目录下就会生成一个password文件, 3,准备svnuser.txt文件, 此文件是保留svn的commit记录的必备文件,因此,所有的人都要有对应的关系,包括离职的,

zhouchao= zhouchao <zhouchao@qq.com>

jialuqi= jialuqi <jialuqi@qq.com>

test = test <test@qq.com>

示例:svnname  =gitname <gitemail.com>

内容如下图所示

4,利用git客户端拉取svn。 我使用的是windows的git客户端,安装完之后,右键里多了两个选项,如下图

在任意位置新建一个空文件夹,然后进入右键 点击第二个git bash here,进入黑屏窗口,如下所示:

拉取命令如下:

git svn clone http://www.svn.net/svn/   --no-metadata --authors-file=svnuser.txt  --trunk=wenyifan  wenyifan

git svn clone http://www.svn.net/svn/ -r 5170:6000  --no-metadata --authors-file=svnuser.txt  --trunk=hn  5170

示例:git svn clone http://www.svn.net/svn/   --no-metadata --authors-file=svnuser.txt --trunk=svn仓库名字  本地生成文件夹名字

根据svn记录多少,拉取时间从几分钟到几小时不等,拉取过程如图所示:

5,拉取完成之后, 1),进入到本地生成的文件夹内,右键->git gui here, 如下图,

会出现一个自动提示,点击确定就行了, 2),remote-->Add;

分别填入远程地址,别名,确定就行了,远程地址的项目一定要是空的才行,不要有任何文件,千万不要初始化仓库,否则报错,就要强制覆盖掉远程了。

3),remote-->Push;

红框内的选项可选可不选,如果报错的话可以选中,强制覆盖掉远程的项目。

转载于:https://my.oschina.net/wyxfl/blog/3030594

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值