您的位置:首页 > 编程语言

如何利用git和github参与开源项目

2012-11-04 13:27 645 查看
兑现我上周的承诺,简单介绍一下git和github的使用,由于本人也刚使用不久,介绍的比较基础,欢迎高手拍砖和补充。

一 安装 git

linux用户直接利用包管理器安装,本人ubuntu ,sudo apt-get install git

win下面用户可以安装msysgit.

二 注册github

1 访问https://github.com/,注册账号。

2 生成密钥

ssh-keygen -b 1024 -t rsa

默认在~/.ssh下会生成 id_rsa和 id_rsa.pub
id_rsa是private key,
id_rsa.pub是public key (密钥类型 RSA,密钥长度 1024)。

3 上传公钥到github

点击account setting


点击add ssh key ,复制 id_rsa.pub中内容添加到key中。


三 如何参与开源项目

下面以jfinal-ext项目为例,介绍github上的常用操作。

进入一个项目的首页 https://github.com/b1412/jfinal-ext



如果你只是想围观请点击watch和star.下载项目请 选择http或者git read-only的链接.

git clone git://github.com/b1412/jfinal-ext.git

如果想定制自己的项目或贡献代码

请点击fork,然后你就可以在你自己的资源库里面拥有这个项目了。

下图是我fork的jfinal项目



这个时候我们可以从我们自己的仓库中clone该项目。

1 git clone git@github.com:b1412/jfinal.git

2 git check -b myfeature 从当前分支(master)切出一个新分支myfeature。

3 修改代码之后 git commit -a -m "注释" 修改的代码就已经提交到本地仓库。

4 git push origin myfeature:myfeature 将该分支push到自己的远程仓库。

5 pull request



向上游提交pull request,上游确定之后你的分支会被merge进去。

6 上游项目更新代码之后如果更新到自己的仓库呢?

git remote add upstream git://github.com/jfinal/jfinal.git

upstream 是一个标示符 ,同样你也可以add其他远程仓库,如

git remote add b1412 git://github.com/b1412/jfinal.git

更新git pull upstream master或者git pull b1412 master

四 关于jfinal-ext

http://www.oschina.net/p/jfinal-ext

这个项目是围绕jfinal的内核进行的外围的扩展,如果大家有关于jfinal的扩展,可以向fork这个项目提交pull request。

如果你fork了jfinal-ext项目,然后想更新最新的代码,请执行

git remote add upstream git://github.com/b1412/jfinal-ext.git

git pull upstream master
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: