同步仓库

要将 SVN 服务器上的代码同步到 Git 仓库中,可以使用 git svn 命令。该命令可以从 SVN 仓库中导入历史记录,并将其转换为 Git 提交

创建一个空的 Git 仓库:(这一步也可以直接新建一个文件夹,不需要使用 git init)

git init my-git-repo
cd my-git-repo

将 SVN 仓库的 URL 添加到 Git 仓库中:

git svn init <svn-repo-url>
# git svn init svn://IP/path/LMYHSG_IMCS_HTML

使用 git svn fetch 命令从 SVN 仓库中导入历史记录:

git svn fetch

将导入的历史记录推送到 Git 仓库中:

git remote add origin <git-repo-url>
# git remote add origin https://gitee.com/xxx/lmyhsg_-imcs_-html.git
git push origin master

如果添加的git-repo-url 更改或者错误了,使用 git remote rm origin删除

更新代码

在本地 Git 仓库中,使用 git svn rebase 命令从 SVN 仓库中拉取最新的代码:

git svn rebase

使用 git push 命令将本地 Git 仓库中的更改推送到远程 Git 仓库:

git push origin master

定时同步

如果SVN服务器的代码有了新的提交,我们手动把代码更新再推送到Git仓库,这个效率会很低,那么有没有办法定时把SVN代码同步到Git仓库呢。

因为我使用的服务器是Centos,因此我利用CentOS的crontab来新建了一个定时任务。

利用crontab来新建定时任务的方法,可以参考我的另外一篇博客