Linux如何设置git与svn共享使用


Linux用户有许多人都在使用svn,不过现在许多用户已经改用git了,因为svn不如git好用,不过要将svn替换成git比较麻烦,因此许多用户都想要知道如何让git与svn共享使用,下面一起来看看解决的方法吧。

git svn命令

Git 中所有 Subversion 桥接命令的基础是 git svn 。所有的命令都从它开始。相关的命令数目不少,本文不过多介绍git svn的命令使用,只简单的说明一下最常用的几个,更多的知识参考书记pro git。

整理用户名与Email的映射

在 Subversion,每个提交者在都在主机上有一个用户名,记录在提交信息中。如果想让已有的信息更好的映射到 Git 作者数据里,则需要 从 Subversion 用户名到 Git 作者的一个映射关系,因为Git是用邮箱来标识一个提交者的。建立一个叫做 user.txt 的文件,每行一条svn作者 = 作者昵称 《邮箱地址》,用如下格式表示映射关系:

user.txt的demo

schacon = Scott Chacon 《schacon@geemail.com》

selse = Someo Nelse 《selse@geemail.com》

SVN代码的所有提交者的作者名可以通过以下命令获得:

获取svn提交的作者名

svn log --xml | grep ^《author | sort -u | \

awk -F ‘\《author\》’ ‘{print $2}’ | awk -F ‘\《/author\》’ ‘{print $1}’ 》 user.txt

得到以下文本,然后根据以上的格式编辑作者的邮件信息等。

得到了svn的作者名

schacon

selse

这样我们的把有svn的提交记录的作者、邮箱user.txt都准备好了,接下来就克隆svn的地址。

克隆svn的trunk到本地

git svn clone example.com/path/to/project-x/trunk \

--authors-file=users.txt project-x

example.com/path/to/project-x/trunk是svn的项目地址,这里用了trunk的目录。

--authors-file=users.txt是指明svn的作者信息,git要用到。

project-x是文件夹名字

--no-metadata参数可以不要svn的信息,适合迁移的时候使用,不适合git svn共用


上一篇:Linux禁止MySQL开机自启动的诀窍

下一篇:如何在Ubuntu和Windows之间共享文件


GitSvn Git和Svn
Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器