msysGit管理GitHub代码

 

代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化。

本篇就简单的说说通过msysGit来管理GitHub中的代码,实现版本控制。

svn与git

  说到版本控制,就不得不提它的发展历史。最开始流行的版本控制工具是cvs,但是cvs有个缺点,就是必须联网使用集中的代码库;于是SVN登上历史舞台,到现在很多公司都在使用SVN,它是一款集中式的管理代码的工具,可以使多个人共同协助开发一款产品,并有很强大的分支标签功能。

  但SVN也局限于集中式管理,所有的代码都放在一个地方,这样也颇为不便。

  于是开源贡献者linus为了满足linux开源项目的需要,就自主开发了Git,一款分布式的代码管理工具,即代码是分布式的形式存储的,每台机器都可以作为代码的托管服务器。

  而现在流行的在线代码托管github就是架设在git之上的一种代码管理社区。

  甚至于,现在的应届生找工作,没用过github或者没有自己的开源项目都会被鄙视。

  所以,本篇就讲述一下如何在windows下管理github的代码。

注册github,创建代码库

  github网址:https://github.com

  注册过程就不说了,注册后,直接点击

  

  就可以创建自己的代码库。

下载客户端工具

  有了github上的代码库之后,我们相当于有了自己的代码托管服务器。

  还需要一个客户端程序,与服务器之间进行通信,管理代码:

  类似SVN中,小乌龟TortoiseSVN与visualSVN的关系!

  关于客户端工具,可以在git的官网上面下载git windows的客户端,也可以下载底部的msysGit管理工具。

  这里推荐msysGit管理工具,它提供了类似linux的终端命令的方式,管理git。

  可以在网址:http://msysgit.github.io/ 中下载:

使用msysgit连接github

  下载后直接安装,下一步下一步无脑安装就可以了。我安装的过程是有点慢,得有十几分钟左右吧。

  安装完成后,直接关掉所有的对话框。

  打开安装目录:

  双击msys.bat,就进入msysgit的管理命令界面,在这里,可以完全使用linux下的命令。

  1 首先要创建SSH Keys文件

  输入命令: ssh-keygen -t rsa -C "xinghalo@163.com"

  具体的邮箱,依据你的情况而定。

  输入后连续要按三个回车,就会在默认的文件夹下生成keys文件

  例如,我这里是在c://users/Administrator/.ssh/下有个叫id-rsa.pub的文件。

  在相应的文件夹下找到该keys文件:

  使用记事本打开id_rsa.pub文件,全选复制!

  2 然后打开自己的github主页,点击add SSH keys,复制进去,随便起个名字。

  3 回到msysgit命令行中,使用SSH -T git@github.com测试!

使用msysgit克隆github库

  在命令行中输入:

  git clone https://github.com/xinghalo/WorldStar.git

  就可以拷贝对应的代码库到本地。其中后面的URL是你的代码库对应的URL。

  URL参考:

使用msysgit提交代码

  前面已经把代码库从github上克隆到本地,所以现在我们可以在本地该文件夹下,创建文件,提交到github上去。

  可以看到上面途中,代码库中只有两个文件和一个文件夹。

  首先创建一个文件:

  使用命令 git add XXX 添加该文件

  使用命令 git commit -m "我想说的话" 把该操作提交到代码库

  使用 git push 把本地的提交,提交到github上

  查看github中的代码成功的添加文件。

msysGit管理GitHub代码的更多相关文章

  1. msysGit在GitHub代码托管

    (转:http://www.cnblogs.com/xing901022/p/4388190.html) 代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化. ...

  2. vs2015管理github代码

  3. 用tortoiseGit管理GitHub项目代码(完整教程)

    一.为什么要写这篇博客呢,因为在一开始用tortoiseGit来管理项目的时候,在百度上找了很多教程,但是感觉说的都不是很全,有些东西以及操作没写清楚,所以想写一片比较完整用tortoiseGit管理 ...

  4. 构建微服务开发环境7————使用Github管理项目代码的版本

    [内容指引] 1.注册GitHub帐号: 2.下载Github Desktop客户端: 3.macOS安装Github Desktop客户端: 4.windows安装Github Desktop客户端 ...

  5. 4 CRM-权限管理rbac、github代码

    1.引入权限组件rbac 1.settings配置app.中间件 INSTALLED_APPS = [ ... ... 'crm.apps.CrmConfig', "stark.apps.S ...

  6. Git+Github代码管理控制

    关于Git的发展历程这里就不多介绍了,有兴趣的话可以查阅一下Git的相关历程. 如果你在做的项目或者自己写的一些项目由于需要用的分布式.或者团队开发.再或者你不善于对代码进行定期备份,但又希望自己的代 ...

  7. vs2013提交github代码

    vs2013的新特性之一就是可以方便的通过集成的git工具管理git代码.今天简单给大家演示 在github新建仓库 复制仓库地址 克隆仓库到本地(这一步非常重要,只有顺利获取github的code, ...

  8. Git 安装及用法 github 代码发布 gitlab私有仓库的搭建

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 这个版本控制软件,有 svn还有git,是一个工具. git是由linux的作者开发的 git是一个分布式版本控制系统 ...

  9. Python 爬虫的工具列表 附Github代码下载链接

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

随机推荐

  1. 泛函编程(33)-泛函IO:Free Functor - Coyoneda

    在前几期讨论中我们终于推导出了Free Monad.这是一个Monad工厂,它可以把任何F[A]变成Monad.可惜的是它对F[A]是有所要求的:F必须是个Functor.Free Monad由此被称 ...

  2. [moka同学笔记]Yii2中多表关联查询(join、joinwith) (摘录)

    表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer   (id  customer_name) 订单表Order          (id  order_name       cu ...

  3. rabbitmq批量删除队列

    有些时候,我们需要批量的删除rabbitmq中的队列,尤其是对于那些客户端配置了队列不存在时自动创建,但断开时不自动删除的应用来说. rabbitmqctl并没有包含直接管理队列的功能,其提供的vho ...

  4. SQL Server 的通用分页显示存储过程

    建立一个 Web 应用,分页浏览功能必不可少.这个问题是数据库处理中十分常见的问题.经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页.但这种分页方法仅适 ...

  5. spring常用注解使用解析

    spring没有采用约定优于配置的策略,spring要求显示指定搜索哪些路径下的Java文件.spring将会把合适的java类全部注册成spring Bean.   问题:spring怎么知道把哪些 ...

  6. ENVI【遥感图像预处理之图像的几何校正】

    ---恢复内容开始--- 一.图像几何校正的概述 1.几何校正方法: 1)利用卫星自带的地理定位文件进行几何校正.主菜单>>>Map>>Georeference传感器的名 ...

  7. Pop Easy – 轻松实现模态窗口的 jQuery 插件

    PopEasy 是一款轻量的 jQuery 插件,可以帮助开发人员容易的创建效果精美的模态窗口.PopEasy 在主流浏览器中都能够正常工作,同时兼容 IE 7 哦. 您可能感兴趣的相关文章 Metr ...

  8. 【经验之谈】前端面试知识点总结03(JavaScript相关)——附答案

    目录 三.JavaScript部分 1.谈谈你对Ajax的理解?(概念.特点.作用) 2.说说你对延迟对象deferred的理解? 3.什么是跨域,如何实现跨域访问? 4.为什么要使用模板引擎? 5. ...

  9. JavaScript实战(原生range和自定义特效)

    今天我又码了两个特效:一个是用原生input[type=range]的,另一个完全自定义的:下面是完整代码和演示: #tip{ position: absolute; top: 30px; left: ...

  10. 简单PHP会话(session)说明

    现在程序员愈发的不容易了,想要精通,必然要寻本溯源,这其实与目前泛滥的愈发高级的语言以及众多的框架刚好相反,因为它们在尽可能的掩盖本源使其简单,个人称之为程序员学习悖论. 注:作者接触web开发和ph ...