首页
社区
课程
招聘
[求助]git可不可能增量从svn同步代码过来?
发表于: 2017-8-9 17:26 3810

[求助]git可不可能增量从svn同步代码过来?

2017-8-9 17:26
3810

需求有点奇怪,一般人很少有这种需求,详情如下:

1.a仓库是svn,其它公司或开源仓库,有很多提交记录,而且每天还有人提交代码,我是开发者,可以读写

2.公司要建立仓库b,我是仓库管理者,复制自a,默认为master分支,并基于今天的代码开分支名为a+,公司所有同事在a+上进行开发,我每日负责从仓库a上把代码同步到仓库b的master分支,并定期把master分支代码合并到a+分支,保证公司同事使用最新代码。

重点需求:完整的保留a的所有日志在仓库b中


现在遇到的问题:

git可以在首次clone时把整个svn备份下来,新建分支,都没问题,问题是后面如何将a仓库的提交同步到b仓库的master分支?有这命令吗?


我也尝试过我的仓库使用svn,用svnsync命令,可以第一次完全dump下来,后面也可以增量sync,但是要求b仓库不能修改,我一新建分支,就没法进行sync了。

所以寻求git,功能强大,应该有解决方法。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 12406
活跃值: (4007)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
我的需求和你的好像差不多,我的A仓库有人在不停更新,我只能拉下来不能推送,我要在A仓库的基础上建立分支然后更新,然后还要合并A仓库每天的更新,然后推送到B仓库去备份,不过我2个仓库用的都是Git,所以本地不需要什么操作,用SourceTree新建一个远程仓库B,先从A仓库同步到本地Master,然后合并本地开发分支,然后用SourceTree把分支推送到B仓库去,所有记录都能保存,但是要求2个仓库的帐号密码是一样的,不同帐号密码的话一直没试成功
2017-8-10 03:41
0
雪    币: 174
活跃值: (620)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
Sam.com 我的需求和你的好像差不多,我的A仓库有人在不停更新,我只能拉下来不能推送,我要在A仓库的基础上建立分支然后更新,然后还要合并A仓库每天的更新,然后推送到B仓库去备份,不过我2个仓库用的都是Git,所以 ...
看你的描述是为了备份到B仓库?这样B是不修改的?
我的其实是2个仓库都有人开发,外网仓库是别的人在开发,公司内的仓库可以理解为基于外网仓库基础上进行开发,而且要经常同步外网代码。
2017-8-10 09:29
0
雪    币: 12406
活跃值: (4007)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
sunbinjin 看你的描述是为了备份到B仓库?这样B是不修改的? 我的其实是2个仓库都有人开发,外网仓库是别的人在开发,公司内的仓库可以理解为基于外网仓库基础上进行开发,而且要经常同步外网代码。
我的B仓库主要是备份,不过就算是有其他人改也无所谓啊,他只要同步我B仓库当成Master,然后建立分支去开发之类的,然后我这边有外网更新合并好了推送到B仓库去,他就同步过去然后合并自己的分支就好了,相当于B仓库的Master永远只用来同步A仓库,其它的都在分支操作就好了,这些好像都没什么问题,我现在一直是在操作2个远程仓库的,不过我看你的问题主要是在同步SVN上吧,我想总是有办法的,看看能不能中转一下之类的,实在不行,SVN那边改了什么,照着在本地仓库改吧,开始我也是这样做的,还实在不行,就看外网仓库更新后重新克隆一次到其它目录,然后用Beyond  Compare之类看哪改了然后更新本地仓库吧
2017-8-11 02:23
0
雪    币: 12406
活跃值: (4007)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5

我的情况其实和你一模一样,一样是基于A仓库改了放B仓库,只是幸好2个仓库都算是自己人的而且帐号密码相同还同样是Git

我想了下你也许可以这样做,如果SVN能正常增量同步的话,那你BC仓库的操作就和我现在AB仓库的操作是一模一样的


2017-8-11 03:10
0
游客
登录 | 注册 方可回帖
返回
//