Git迁移记录

背景

之前公司的Git服务器是用的Gogs,当时安装时选择的是tidb数据库。后来发现tidb数据库无法使用ssh服务(更改为其它数据库是可以的),但是我们的开发过程中有很多命令行的一些操作,导致每次使用命令时都需要输入用户名和密码,很麻烦,所以想改下数据库,然后使用ssh://格式的Git仓库。

GIT分支管理策略(非Git workflow)

参照 http://www.ruanyifeng.com/blog/2012/07/git.html

主分支Master

主分支有且只有一个,所有提供给用户使用的正式版本都在这个分支上发布。

开发分支Develop

日常的开发工作应该都在这个分支上进行。

1
git checkout -b develop

如果需要从develop对外发布版本

1
2
git checkout master
git merge --no-ff development

注:这里的参数--no-ff是不进行快速合并(快速合并只是改变指针)的意思。

SVN、GIT数据迁移

SVN数据迁移

svn的管理使用的是Collabnet Subversion Edge。

1.安装服务

在目标机器上安装Collabnet Subversion Edge,简称CSE

2.复制版本库

将旧服务器上的repository全部复制到新服务器上

3.导入数据

在新服务器上打开CSE的管理后台http://localhost:3343/csvn, 在“版本库”页面选择“发现版本库”,这样就把之前的版本库都导入进去了

4.复制用户数据

从原机器中拷贝{安装路径} \data\conf下的svn_auth_file文件到新机器

5.导入用户数据

修改新机器{安装路径}\data\csvn-production-hsqldb.script文件。复制原机器中类似

INSERT INTO USER VALUES(1,2,'admin user','admin@example.com',TRUE,'f52c7457507a292a11bf8d274d720ee4','Super Administrator','admin')

的语句到新服务器的对应文件。

6.重置用户密码

7.重启CSE服务即可