(转:http://www.cnblogs.com/xing901022/p/4388190.html)

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

本篇就简单的说说通过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中的代码成功的添加文件。

由于自己有两个github账号,最近在push项目时,突然发现一直提示的permission denied. 细看原来是用的另外一个github的账号,不是当前origin所在的github对应的账号。于是查找了一stackoverflow上面的解决方http://stackoverflow.com/questions/14689788/multiple-github-accounts-what-values-for-host-in-ssh-config

然后重新设置每个项目的非全局的用户名和邮箱:

git config user.name "your_name"
git config user.email "your_email"

看效果

#修改一个文件

$ touch test

# 发布

$ git add -A && git commit -am 'update' && git push origin master

 

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

  1. msysGit管理GitHub代码

    msysGit管理GitHub代码   代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化. 本篇就简单的说说通过msysGit来管理GitHub中的代码,实 ...

  2. GitHub代码托管平台搭建

    GitHub代码托管平台搭建 注册账户以及创建仓库 要想使用github第一步当然是注册github账号了, github官网地址:https://github.com/. 之后就可以创建仓库了(免费 ...

  3. git/github 代码托管图文教程

    现在都流行将代码托管到github,使用版本控制工具git,现在让我们开始一步一步的将我们本地的代码托管到github上去吧 一. git的使用 1.下载git工具 2.下载好后安装时候注意要使用vi ...

  4. 简单学习github代码托管

    之前尝试使用阿里云code做代码托管 egret+git+阿里云code搭建团队开发 ,现在来学习一下使用 Github做代码托管服务. 总体上看使用的步骤差不多,都需要使用GIT客户端来进行相关的操 ...

  5. github代码托管

    下载github客户端软件 1)  官网下载help.github.com 2)  百度搜索,一般用于windows7以前的系统 安装github软件 按照软件提示安装即可.不过,博主倾向使用命令行工 ...

  6. 在线的代码托管平台 coding.net ===中国扩展版github

    coding.net 是国内新兴的一个项目管理平台,功能主要包括:代码托管.在线运行环境.监控代码质量,兼有一定的社交功能. 在线运行环境支持Java.Ruby.Node.js.PHP.Python. ...

  7. iOS开发-xCode代码托管到GitHub

    xCode默认的是由源代码管理工作Git,Android Studio内置的也有,之前写过两篇关于Window托管Android代码到GitHub的文章,一直想写篇关于Mac上托管代码的到文章,今天终 ...

  8. 将代码托管到github,并生成链接访问

    转眼间加入github的阵营已经两年多了,看到别人建立的个人博客挺好看的,因此,自己从此喜欢上了github,总结下自己的相关知识. 推荐学习Git的网址: 猴子都能懂的GIT入门 http://ba ...

  9. 使用github进行代码托管

    ---恢复内容开始--- 记录下使用github进行个人代码托管,github是公共的代码托管库,可以免费使用,由于是公共的所以大家都可以查看,如果是隐私重要的文件代码可以选择付费变为私有库 1.注册 ...

随机推荐

  1. JavaSE基础知识(1)—初识Java

    一.JAVA的背景 JAVA本身隶属的公司的是sun公司(创始公司) JAVA创始人:詹姆斯 高斯林 09年被oracle收购 JAVA的前身是Oak 二.JAVA的版本 95年 JAVA诞生96年 ...

  2. php Pthread 线程 互斥锁

    在进行并发操作时,会导致共享数据的完整性的问题,要加入锁,在任意时刻只有一个线程访问该对象在PHP中定义专门用于线程同步控制的mutex的函数, pthreads v3 中已经将 Mutex 类移除. ...

  3. jenkins源码管理git分支参数化

    多个分支来回切换构建时,每次都需要去很多个job里面改分支名称,比较费时,分支参数化后可以只改一处就ok啦 步骤: 1.进入系统管理--系统设置 2.勾选全局变量,然后输入分支变量名和对应的分支名称 ...

  4. Idea+maven+testNG+Selenium+ReportNG自动化框架搭建

    1.Idea创建一个空的Maven项目 创建后默认项目目录如图所示 2.配置pom.xml文件 <?xml version="1.0" encoding="UTF- ...

  5. python基础 (编码进阶,文件操作和深浅copy)

    1.编码的进阶 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码. 即先将其他编码的字符串解码(decode)成unicode,再从uni ...

  6. android studio 关闭SVN关联

    <?xml version="1.0" encoding="UTF-8"?> <project version="4"&g ...

  7. 15. pk-mext

    在平时的生产环境中,我们经常会碰到监控MySQL的各个状态值的一个变化趋势,然后就会自己写个脚本,将status快照保存到文本中.当我们去分析的时候,需要自己去比较差值,是一件比较麻烦的时候,虽然可以 ...

  8. How to configure Samba Server share on Debian 9 Stretch Linux

    Lubos Rendek Debian 13 June 2017 Contents 1. Objective 2. Operating System and Software Versions 3.  ...

  9. Python:每日一题005

    题目: 输入三个整数x,y,z,请把这三个数由小到大输出. 程序分析: 我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x> ...

  10. Pivot For和UNPivot For

    一.使用PIVOT和UNPIVOT命令的SQL Server版本要求 1.数据库的最低版本要求为SQL Server 2005 或更高. 2.必须将数据库的兼容级别设置为90 或更高. 3.查看我的数 ...