【原创】30分钟入门 github

很久没更新了,这篇文章重点在github的入门使用,读者可以下载github for windows shell,边看边操作,加深印象。

好了,30分钟的愉快之旅开始吧:

一、github使用的注意事项:

1.对于某一次更新提交,必须要有这次操作的commit操作,git commit -m “评论内容”,这样才能成功提交。

2.对github的使用是本地修改再提交的过程。本地操作的时候,文件夹名字和远程resipository尽量一致。

3.使用别人的开源项目时,需要先把对方的项目fork到自己的github下,然后再clone下载到本地修改。

4.新建仓库的时候,先从web登录自己的github,新建仓库,之后本地操作就可以往仓库里提交内容了。

二、github基本使用:

1.下载项目 ,clone命令

例如,下载用户名为xiaobocser下的hbase项目

git clone https://github.com/xiaobocser/hbase.git

clone操作不会输入用户名和密码,下载到当前所在目录下。

2.提交修改,add commit命令

例如,向hbae项目提交README.txt文件的修改

2.1 git add README.TXT //此处可以有多个add,但是若想更新远程仓库,需要对这系列操作有一个commit说明

2.2 git commit -m “modify the way of wal” //双引号里面是对此次修改的说明

2.3 git remote add hbase https://github.com/xiaobocser/hbase.git  //添加远程端口,hbase是这个远程端口的名字。可以自己任意起名字。

2.4 git push hbase master //提交修改到远程仓库。hbase是个刚刚设置的端口,master是版本名称。

这一步会输入用户名和密码,即实例中xiaobocser的用户名和密码。

                      图2.1 add和commit关系

3.版本维护 ,3个发展过程

3.1本地维护。这种维护的缺点很明显,一个是自己容易把版本之间搞混。二是不利于协同开发。

图3.1 本地维护

3.2 集中维护。这种维护的缺点是一旦网络出问题,或者服务器出问题,开发就会受到影响。SVN即这种方法。

图3.2 远程维护

3.3 分布维护。这种维护比较好,本地操作不受其它因素限制,修改完后可以提交,分享。Github使用。

图3.3 分布维护

3.4 github的版本维护,分支。

图3.4 github分支图

3.4.1 git checkout -b feature_x_test //新建一个分支,feature_x_test是分支名称

3.4.2 git push hbase feature_x_test //把修改更新到此分支

3.4.3 git merge master feature_x_test //master:源   feature_x_test:目的

//////以下操作可以不进行

3.4.3 git checkout master //切换分支

3.4.4 git checkout -d feature_x_test //删除该分支

4. 查看状态及恢复

4.1 git status //查看状态

4.2 git reset --hard //恢复修改

4.3 git diff trunk xiaobocser //查看trunk分支和xiaobocser分支有哪些文件不同

5. 恢复之前设置的状态

5.1 git init 可以恢复上面的误操作,比如更改当前目录等等

5.2 git rm  删除文件或目录

三、github协同开发(如何给github上的项目贡献代码)

二.1里提了一下,可以clone别人的代码到本地,然后自己修改。但是这里会有两个问题:1.自己虽然改了,但是如何提交给该项目呢?或者说如何通知他呢?2.源项目的代码可能会更新,那么我如何保持和它的同步呢?那么按问题回答。

1.提交项目代码

 

因为项目是人家的,所以自己不可能想提交就提交。所以有个通知的机制。

1.1 fork该项目代码

1.2 自己的账户下会有该代码

1.3 clone代码到本地并修改

1.4 如果想提交给源项目,在自己帐号该项目处点击Pull Requests。

1.5 源项目会收到通知及邮件,以决定是否要把提交的修改加入。

2.保持同步

使用merge来保持同步

2.1 git remote add origin https://github.com/apache/hbase.git //添加指向源项目

2.2 git fetch origin master //从源项目同步代码

2.3 git log -p master.. origin/master //比较本地仓库和远程仓库的不同

2.3 git merge origin/master        //合并到本地

3.添加合作者(不同于1和2)

这个是对信任的开发者,或者说是“自己人”使用的一种方法。即合作者有权直接添加修改等等,进而省去了1和2这样的麻烦。而1和2一般是针对未知开发者设定的。

对于1,这种模式下可以直接push修改。对于2,可以直接pull更新。

方法:在项目设置里面添加合作者。 settings->Collaborators->add a friend。

30分钟入门就此结束了,如果大家还有疑问可以留言或自行进入下面的传送门!

祝好!

相关文档推荐

http://git-scm.com/book                     //git社区参考书  比较权威

http://rogerdudler.github.io/git-guide/index.zh.html  //github简易使用指南

blog.csdn.net/hcbbt/article/details/11651229 // 重点在文章最下的推荐文档

http://my.eoe.cn/leigo/archive/3221.html   //给github项目贡献代码

http://my.eoe.cn/iceskysl/archive/463.html //git指令集

http://joshuasabrina.iteye.com/blog/1816597 //团队开发环境的设置

http://my.eoe.cn/com360/archive/3533.html  //fetch 和 merge 的使用

http://my.eoe.cn/iceskysl/archive/3195.html //一个实际的例子讲解如何参与github合作开发

转载请注明出处~   http://www.cnblogs.com/xiaoboCSer/p/4378451.html

时间: 2024-10-11 22:52:21

【原创】30分钟入门 github的相关文章

【转】正则表达式30分钟入门教程

首页 | 常用正则表达式 | 正则表达式测试工具 正则表达式30分钟入门教程 版本:v2.33 (2013-1-10) 作者:deerchao 转载请注明来源 目录 跳过目录 本文目标 如何使用本教程 正则表达式到底是什么东西? 入门 测试正则表达式 元字符 字符转义 重复 字符类 分枝条件 反义 分组 后向引用 零宽断言 负向零宽断言 注释 贪婪与懒惰 处理选项 平衡组/递归匹配 还有些什么东西没提到 联系作者 网上的资源及本文参考文献 更新纪录 本文目标 30分钟内让你明白正则表达式是什么,

HTML 30分钟入门教程

本文目标 30分钟内让你明白HTML是什么,并对它有一些基本的了解.一旦入门后,你可以从网上找到更多更详细的资料来继续学习. 什么是HTML HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,它规定了自己的语法规则,用来表示比"文本"更丰富的意义,比如图片,表格,链接等.浏览器(IE,FireFox等)软件知道HTML语言的语法,可以用来查看HTML文档.目前互联网上的绝大部分网页都是使用HTML编写的. HTML是什么样的 简单地来说,HT

正则表达式30分钟入门教程 都是复制的

正则表达式30分钟入门教程 来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial. 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了如果有问题,再到这里来提出. 一些要说的话: 如果你没有正则表达式的基础,请跟着教程“一步步来”.请不要大概地扫两眼就说看不懂——以这种态度我写成什么样你也看不懂.当我告诉你这是“30分钟入门教程”时,请不要试图在30秒内入门. 事实是,我身边有个才接触电脑,对操作都不是

正则表达式30分钟入门教程(转)

来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial. 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了如果有问题,再到这里来提出. 一些要说的话: 如果你没有正则表达式的基础,请跟着教程“一步步来”.请不要大概地扫两眼就说看不懂——以这种态度我写成什么样你也看不懂.当我告诉你这是“30分钟入门教程”时,请不要试图在30秒内入门. 事实是,我身边有个才接触电脑,对操作都不是很熟练的人通过自己学习这篇教

js正则表达式30分钟入门教程

2011-10-27 13:23:15 如何使用本教程 最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :) 别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你 想像中的那么困难.当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看 完这篇教程后,能把提到过的语法记住80以上的可能性为零.这里只是让你明白基本的原理,以后你还需要多练习,

正则表达式30分钟入门

来源:http://deerchao.net/tutorials/regex/regex.htm#lookaround 正则表达式30分钟入门教程 版本:v2.33 (2013-1-10) 作者:deerchao 转载请注明来源 目录 跳过目录 本文目标 如何使用本教程 正则表达式到底是什么东西? 入门 测试正则表达式 元字符 字符转义 重复 字符类 分枝条件 反义 分组 后向引用 零宽断言 负向零宽断言 注释 贪婪与懒惰 处理选项 平衡组/递归匹配 还有些什么东西没提到 联系作者 网上的资源及

正则表达式30分钟入门教程 ——堪称网上能找到的最好的正则式入门教程

本教程堪称网上能找到的最好正则表达式入门教程 原地址:http://www.jb51.net/tools/zhengze.html 本文目标 30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它. 如何使用本教程 最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :) 别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有想像中的那么困难.当然,如果你看完了这篇教程之后,发现

PHP正则表达式30分钟入门教程

正则表达式30分钟入门教程 三个常用的知识点: 1.惰性匹配:正则引擎默认是贪婪的,若要最少重复的话,需要用到惰性匹配符 “?” 懒惰限定符 代码/语法 说明 *? 重复任意次,但尽可能少重复 +? 重复1次或更多次,但尽可能少重复 ?? 重复0次或1次,但尽可能少重复 {n,m}? 重复n到m次,但尽可能少重复 {n,}? 重复n次以上,但尽可能少重复 参考:http://deerchao.net/tutorials/regex/regex.htm#greedyandlazy 2.不捕获性匹配

转:正则表达式30分钟入门教程

来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial. 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了如果有问题,再到这里来提出. 一些要说的话: 如果你没有正则表达式的基础,请跟着教程“一步步来”.请不要大概地扫两眼就说看不懂——以这种态度我写成什么样你也看不懂.当我告诉你这是“30分钟入门教程”时,请不要试图在30秒内入门. 事实是,我身边有个才接触电脑,对操作都不是很熟练的人通过自己学习这篇教