发布 Rafy 源码到 GitHub

最近项目组开始使用 Git 来作为源码管理。我今天就顺便把 Rafy 的源码也迁移到了 github 上,方便大家使用。这是项目的地址:https://github.com/zgynhqf/rafy,Git Clone 地址为:https://github.com/zgynhqf/Rafy.git

由于我个人也是第一次使用 Git 来做源码管理。本文主要是记录一下过程,及遇到的问题。

  • 在 VS 中如何使用 Git

在 VisualStudio 2013 中使用 Git 有两种方法:

一种方法是安装并使用扩展“Git Source Control Provider”。试用了一下,发现按钮并不齐全,许多功能都是放在 TortoiseGit 下拉列表中,非常不易用:

另外一个方法是使用内置的 Microsoft Git Provider。这种方法的界面跟 TFS 是一样的,使用 Team Explorer 来操作,不符合我原来用 AknSVN 的习惯,不过功能非常齐全,Commit、Push 等都有。最终还是选择了这个:

  • 在 Git 如何变换 Repository 的位置

当服务端 Repository 的地址变换时,在 SVN 中有 Relocate 命令可以直接使用。但是在 Git 中却没有这个命令。在 TortoiseGit 中,完成这个任务需要打开 Settings,修改以下配置:

  • 将 SVN 仓库转换到 Git 仓库

原来用的源码管理都是 SVN,这次转换到 Git,希望能够直接把 SVN 进行升级,这样就不会丢失历史的提交记录。而我需要转换两种类型的 SVN 仓库到 Git:

  1. 转换发布到 SourceForge 的 SVN 仓库到 GitHub.com

这种转换比较简单,GitHub 中有功能可以进行直接转换,祥见:https://help.github.com/articles/importing-from-subversion/

  1. 转换本地 SVN 仓库到本地 Git 仓库

这个转换比较复杂。过程中遇到的问题较多。

主要是因为git-svn只支持通过网络连接(svn:// 或 http://之类)的方式来转换,所以本地的仓库转换,是不能直接使用 file:/// 协议访问的,而是还得安装一个 SVN 服务端进行发布。这一步我是使用 VisualSVN 进行发布的。

发布完成后,使用 git svn clone 把所有内容复制下来。(这一步操作比较耗时)

复制完成后,需要修改 .git 文件夹中的 config 文件。把后面的两个 SVN 服务端配置节,修改为上图中的 Git 服务端配置节,然后设置正确的 Git 服务端地址。

最后,把整个本地记录全部 Push 到这个服务端中,就可以了。

完成后,这个 Git Repository 中就有了原来的所有历史记录了:

SVN 转换到 Git,参考以下文章:

svn转换到git

版本库转换:hg->git->svn->git

SVN迁移到Git的过程(+ 一些技巧)

如何将 SVN 仓库转换为 Git 仓库

How to Convert Subversion Repo to Git

另外,下面是使用 Git 的帮助:

Git/SVN 常用命令》、《GitHub 帮助 - HelloWorld》。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏androidBlog

Git 命令行教程及实例教程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdutxiaoxu/article/details/...

15010
来自专栏北京马哥教育

工作汇报神技!用Python三步生成带有图表的word报表

最近在项目中做了一个生成并导出word报表的功能,在这里分享给大家。 经过查看ESPC原有的生成报表代码和网上查阅的一些方法,解决方案的思路如下: 1. 利用p...

55050
来自专栏JavaEdge

Redis Cluster流程原理

Redis 3.0之后,节点之间通过去中心化的方式,提供了完整的sharding、replication(复制机制仍使用原有机制,并且具备感知主备的能力)、fa...

19820
来自专栏沈唁志

怎么快速集成QQ微博等第三方授权登录功能?

日常项目中经常会用到QQ授权登录或者微信授权登录,方便了用户,否则需要手机验证码等等的操作,授权登录只需要一键操作

11910
来自专栏技术视野

使用tail查看并跟踪文本文件的结尾

tail命令是用于查看文本文件末尾的核心Linux实用程序。您还可以使用跟随模式查看实时添加到文件中的新行。tail类似于,用于查看文件的开头

31040
来自专栏维C果糖

IntelliJ IDEA 中的版本控制介绍(下)

在「IntelliJ IDEA 中的版本控制介绍」中,我们已经简单了解了 IntelliJ IDEA 的版本控制机制,那么接下来,就让我们一起看看在 Intel...

27360
来自专栏JetpropelledSnake

SNMP学习笔记之SNMPWALK 安装与使用详解

snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示给用户。通过sn...

37710
来自专栏云计算教程系列

如何在Ubuntu 14.04上安装和配置Naxsi

Naxsi是第三方Nginx模块,提供Web应用程序防火墙功能。它为您的Web服务器带来了额外的安全性,并保护您的服务器免受各种Web攻击,如XSS和SQL的注...

21900
来自专栏IT 指南者专栏

今天花时间最多的两个小错误

微信公众号:compassblog 欢迎关注、转发,互相学习,共同进步! 有任何问题,请后台留言联系! 1、配置Maven项目的pom.xml文件报错 (1)、...

29570
来自专栏好好学java的技术栈

手把手从零开始带你学git和GitHub

版本: 想想你平时用的软件,在软件升级之后,你用的就是新版本的软件。你应该见过这样的版本号:v2.0 或者 1511(表示发布时为15年11月),如下图:

12320

扫码关注云+社区

领取腾讯云代金券