svn搬移到gitlab辛酸史

  svn是一款非常简便,易用的源代码管理工具,用了这么多年,对它情有独钟。都说习惯最难改,那为何要搬移到gitlab上呢?
喜欢尝试新东西,前提还是git比较强大,svn有的它都有,svn没有的它也有。

  这次是把公司有7年历史的svn项目搬移到gitlab上,期间各种折腾,各种心酸,但我喜欢这样的感觉,1、第一次使用git。2、gitlab托管到linux服务器上,对命令不熟悉。3、跟着前人的路走,自以为这样能少走弯路,方法没对,没搞懂原理就跟随。4、svn服务器上很多历史版本已经损毁。

  

  步骤原理:1、转换现有svn为git库(所谓的克隆)。2、提交到gitlab的工程。

  看步骤很简单,对吧!

  步骤1:git svn clone svn_url --authors-file=c:\users.txt
项目名称,命令也简单。svn_url:指定你的svn服务器地址;users.txt存储svn账号和gitlab上账号的关联。

  问题不是出在这条命令,问题在于svn_url对应的服务器本身,服务器有6w多条日志,其中部分日志已经损坏,导致整个克隆失败,而一次克隆命令至少要执行一个小时。要不是为了7年的log日志,做法就不用这么麻烦了。

  遇到问题就解决问题,网上找了半天,google没找出好的方案。其实我就是想删除1-6w条日志中有问题的日志,但是很麻烦,请google吧。

  完  

时间: 2024-10-13 16:19:57

svn搬移到gitlab辛酸史的相关文章

开发QQ互联ios版Ane扩张 辛酸史

来源:http://www.myexception.cn/operating-system/1451490.html 开发QQ互联ios版Ane扩展 辛酸史 开发QQ互联ios版Ane扩展辛酸史: 1.安装mac系统非常痛苦,找了好几个版本都装不上,同时对mac的基本操作和xcode的基本操作不熟悉. 2.用xcode建立ane项目(使用xcode-template-ane-master模板),引入第三方object-cframework,生成.a文件,供windows下生成ane文件. 发现w

智能视频监控中的遗留物或搬移物检测

智能视频监控中的遗留物或搬移物检测 [email protected] http://blog.csdn.net/kezunhai 遗留物或搬移物检测是智能视频监控中的一项基本功能,基本上是智能视频监控领域的必备功能.然而,在实际应用中漏报或误判率依然很高.常见的遗留物或搬移物检测算法主要分为两类,一类是先检测,再根据检测前景在场景中的停留时间来判定是否为遗留物或搬移物:另一类,则是先检测,然后采用跟踪方法来判断是否为遗留物或搬移物,该类方法由于目标跟踪本身存在的难点,在实际应用的场景受到了很大

重构笔记——搬移字段

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42780243         在上一篇文章中介绍了"搬移函数".本文将介绍"搬移字段"这种重构手法.         下面让我们来学习这种重构手法吧. 开门见山         发现:程序中某个字段被其所驻类之外的另一个类更多地用到. 解决:在目标类新建一个字段,修改原字段的所有用户,令它们改用新字段. 动机 在类之间移动状态

2.1 搬移函数

[1]源代码 1 // 重构前 2 class Account 3 { 4 public: 5 double overdraftCharge() 6 { 7 if (m_type.isPremium()) 8 { 9 double result = 10; 10 if (m_nDaysOverdrawn > 7) 11 { 12 result += (m_nDaysOverdrawn - 7) * 0.85; 13 } 14 return result; 15 } 16 else 17 { 18

2.2 搬移字段

[1]源代码 1 // 重构前 2 class Account 3 { 4 public: 5 double interestForAmount_days(double amount, int days) 6 { 7 return m_dInterestRate * amount * days / 365; 8 } 9 10 private: 11 AccountType m_type; 12 double m_dInterestRate; // 利率随类型变化,所以准备搬移该字段 13 };

第3章 在对象之间搬移特性(2):提炼类、类的内联化

3. 提炼类(Extract Class) 3.1 动机 (1)某个类做了应该由两个类做的事,可以将相关字段和函数从旧类搬移到新类. (2)当某些特性需要以一种方式来子类化,另外一些特性则需要以另一种方式子类化,这就意味着需要分解原来的类. 3.2 做法 (1)决定如何分解类所负的责任. (2)建立一个新类,用以表现从旧类中分离出来的责任.如果旧剩下的责任与旧类名称不符,也可以为旧类更名. (3)建立“从旧类访问新类”的连接关系.有时可能需要一个双向连接,但是在真正需要它之前,不要建新“从新类通

[国嵌攻略][042][代码搬移不可少]

ARM启动流程 1.处理器内部RAM的大小有限,不能拷贝全部的Bootloader,所以需要用内部RAM BL1的代码来拷贝BL2的代码到内存中.规范的方式的代码搬移的起点是flash,终点是内存.但是由于nand flash还没有初始化,所以先从内部ram中把BL1搬移到内存中.等到初始化nand flash后在采用规范的代码搬移方式. 2.起点SRAM地址:2440 0x00000000,6410 0x0C000000,210 0xD0020000 3.链接起始地址决定了程序第一行代码在内存

重构笔记——搬移函数

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42679983         我们都知道,类往往因为承担过多的责任而变得臃肿不堪.这种情况下,一般会使用"提炼类"这种手法将一部分责任分离出去.如果一个类变得"不负责任",一般会使用"内联类"这种手法将它融入另一个类.如果一个类使用了另一个类,一般会运用"隐藏委托关系"手法将这种关系隐藏

重构摘要7_在对象之间搬移特性

<重构-改善既有代码的设计>Martin Fowler 摘要: 第七章 在对象之间搬移特性 Move Method 搬移函数 你的程序中,有个函数与其所驻类之外的另一个类进行更多交流:调用后者,或被后者调用 在该函数最常引用的类中建立一个有着类似行为的新函数.将旧函数变成一个单纯的委托函数,或者将旧函数完全移除. Move Field 搬移字段 某个字段被其所驻类之外的另一个类更多地用到. 如果我需要对类做许多处理,保持小步前进是有帮助的. Extract Class 提炼类 某个类做了应该由