SVN项目迁移到Git上(并带有完整的提交记录)
公司需求:早期的一些项目使用的是SVN,现在想要更换为Git,需要代码迁移并且能在Git上看到之前在SVN中的项目的提交记录,公司没有使用gitlab,代码都push在公司的服务器上,用的是TortoiseGit来管理的。
第一步:公司服务器系统(centos6.8),安装git
yum -y install git
第二步:创建git用户:
useradd git #创建名称为git的用户
passwd git #git用户对应的密码也为git
第三步:创建git仓库:
mkdir /home/git/gitrepo
cd /home/git/gitrepo
git init --bare test.git
chown -R git:git test.git
第四步:开始将svn代码做迁移操作,在windows上任意创建一个空文件夹GitTest,作为一个Git本地仓库,用来存放从SVN上迁移过来的代码。

第五步:在这个文件中打开Git Bash

第六步: 在GitBash中输入clone的命令,在Bash中输入如下指令, 就会开始迁移”git svn clone svnUrl”, 其中里面的svnUrl就是你要迁移的项目的SVN地址

这时会弹出来两个对话框, 让你输入SVN的账号和密码, 当你输入正确的SVN账号和密码时, 代码就会开始迁移. 就会出现如下类似的log

这就表示迁移成功了, 现在要想看以前的提交记录是否迁移过来的话, 我们就需要在命令行里进入的本地仓库根目录中(也就是带有.git的目录), 进入之后输入git log, 就可以看到以前的提交记录了。
第七步:push本地仓库到远程服务器仓库,注意:首先要确保你的远程服务器上有这么一个仓库
#git remote add origin git@192.168.66.13:/home/git/gitrepo/test.git

进行这两个操作的时候, 会提示你输入你的Git的账号和密码, 点击ok之后就会进行push操作.
注意: 这一步的时候可能会提示一个错误:fatal: remote origin already exists.
如果出现如上所说的错误,解决办法:
$ git remote rm origin #删除远程git仓库
然后在执行第七步。
完成以上步骤后,测试一下,使用TortoiseGit客户端clone项目

在查看下是否有提交信息

SVN项目迁移到Git上(并带有完整的提交记录)的更多相关文章
- Git SVN Clone 旧项目迁移到 Git 上
Git SVN Clone 旧项目迁移到 Git 上 很久使用的是 SVN,但由于项目重启,想改为 Git. 之前的 SVN 仓库是本地,所以在 git svn clone 一直不成功. 正确的方式: ...
- SVN项目迁移到GIT
源项目为SVN项目, 复制一份出来后. 在VS里无法修改 源码管理器的插件为GIT. 解决方法: 删除SVN插件信息 在解决方案文件中. 删除以下SVN信息就可以了 删除后:
- svn项目迁移至gitlab
关于svn项目迁移有人可能会说,新建一个git项目,把原来的代码直接扔进去提交不完了吗.恩,是的,没错.但是为了保留之前的历史提交记录,还是得做下面的步骤 首先确保本地正常安装配置好git,具体步骤不 ...
- 微服务开发有道之把项目迁移到Kubernetes上的5个小技巧
我们将在本文中提供5个诀窍帮你将项目迁移到Kubernetes上,这些诀窍来源于过去12个月中OpenFaas社区的经验.下文的内容与Kubernetes 1.8兼容,并且已经应用于OpenFaaS ...
- 如何永久删除git仓库中敏感文件的提交记录
如何永久删除git仓库中敏感文件的提交记录 参考: 1. https://help.github.com/articles/remove-sensitive-data/
- SVN如何迁移到Git?
最近在使用华为软件开发云进行开发项目管理,目前华为软件开发云支持500M的免费项目空间,而且还可以在线编译和构建,不用担心开发环境和生产环境的不同,很好的体现了DevOps的开发理念. 之前一直是用s ...
- svn版本控制迁移到git
获得原 SVN 仓库使用的作者名字列表 因为导入到git需要配置原作者(svn提交人)和git账户的映射关系 其格式为: vim authors-transform.txt taoxs = xsTao ...
- SVN仓库迁移到Git的完美解决办法
参考文章Converting a Subversion repository to Git 1 使用git svn clone 拷贝svn仓库 cd ~/test_repo git svn clone ...
- git log 查看指定文件的提交记录
使用git log除了可以看整个仓库的提交记录外,还可以指定某个文件的提交记录. 1. 查看指定文件的历史提交记录 命令: git log -- <file> 说明:只需要指定文件名称. ...
随机推荐
- Java开发环境配置(3)--eclipse汉化插件安装、卸载 中遇到的问题
eclipse汉化中遇到的问题 网上汉化的帖子很多 如: Eclipse超级完美汉化教程_百度经验http://jingyan.baidu.com/article/e75057f28401a8ebc9 ...
- WebLogic XMLDecoder反序列化漏洞复现
WebLogic XMLDecoder反序列化漏洞复现 参考链接: https://bbs.ichunqiu.com/thread-31171-1-1.html git clone https://g ...
- python第三天,字符串续
字符串类型 在python中字符串类型可以用 成对单引号,如:'你好,中国.': 也可以用成对双引号,如:"厉害了,我滴国".代码如下: 通过.title(),可以将一段话的首字母 ...
- Spotlight LGWR1 一直告警
http://www.itpub.net/thread-1181372-1-1.html
- camera理论基础和工作原理【转】
转自:http://www.cnblogs.com/fjutacm/p/220631977df995512d136e4dbd411951.html 写在前面的话,本文是因为工作中需要编写摄像头程序,因 ...
- HAProxy详解(二):HAProxy基础配置与应用实例
一.HAProxy基础配置与应用实例: 1.快速安装HAProxy集群软件: HAProxy的官网: https://www.haproxy.org/#down下载HAProxy的源码包. 安装: [ ...
- c++学习day2
1. 输入输出 1)控制符 2) 如果要读取所有输入的字符,包括空格和回车,可以有如下两种方法,其中EOF在windows里默认是 ctrl+Z 注:输入字符时,scanf不会跳过空格,输入其他类型数 ...
- smarty半小时快速上手教程
一:smarty的程序设计部分: 在smarty的模板设计部分我简单的把smarty在模板中的一些常用设置做了简单的介绍,这一节主要来介绍一下如何在smarty中开始我们程序设计.下载Smarty文件 ...
- ansible笔记(9):常用模块之包管理模块
ansible笔记():常用模块之包管理模块 yum_repository模块 yum_repository模块可以帮助我们管理远程主机上的yum仓库. 此处我们介绍一些yum_repository模 ...
- Maven安装与配置及使用
下载及安装 官方下载地址:直达官网下载页面 进入下载页面后,根据你电脑所装jdk版本选择对应版本的maven进行下载. 我们可以看到该页上边红框内写明了,maven3.3版以上支持的是JDK1.7+的 ...