开源项目GitHub
GitHub
手把手教你如何加入到github的开源世界!
http://www.open-open.com/lib/view/open1396580186465.html
如何在 Github 上发现优秀的开源项目?
https://www.oschina.net/news/75674/how-to-find-good-opensource-object
https://github.com/blog/2289-publishing-with-github-pages-now-as-easy-as-1-2-3
github怎么用 ubuntu
1、Git的安装 我使用了ubuntu 10.04 ,默认情况下,ubuntu 中并没有安装,所以首先需要在系统中进行 git 的安装。 sudo apt-get install git-core 安装完成后,在终端中输入 git 就可以看到相关的命令了。如果只是需要使用git来管理本地的代码,那么现在就可以使用了。如果需要和github上的项目结合,还需要做其他的一些操作。
2、github帐号的申请 如果只是需要将github上感兴趣的代码拷贝到本地,自己进行修改使用,而不打算共享发布的话,其实不申请帐号也没有关系,只需要 git clone 代码到本地就可以了。本文对这种方法不做讨论,毕竟使用 github 就是为了开源的目的。 首先去 github.com 上注册一个帐号,具体的注册流程就不赘述了。 3、在本地建立一个文件夹,然后做一些全局变量的初始化 git config --global user.name = "用户名或者用户ID" git config --global user.email = "邮箱" 这两个选项会在以后的使用过程中自动添加到代码中。 4、创建验证用的公钥 这个是比较复杂和困扰大多数人的地方,因为 git 是通过 ssh 的方式访问资源库的,所以需要在本地创建验证用的文件。 使用命令:ssh-keygen -C 'you email address@gmail.com' -t rsa 会在用户目录 ~/.ssh/ 下建立相应的密钥文件 可以使用 ssh -v git@github.com 命令来测试链接是否畅通 5、上传公钥 在 github.com 的界面中 选择右上角的 Account Settings,然后选择 SSH Public Keys ,选择新加。 Title 可以随便命名,Key 的内容拷贝自 ~/.ssh/id_rsa.pub 中的内容,完成后,可以再使用 ssh -v git@github.com 进行测试。看到下面的信息表示验证成功。
进行到这里,我们也可以利用github来管理我们的项目和参与开源工作了,大体上使用git分为三种方式。 管理自己的项目 这种情况是自己在本地有一些代码,需要利用 github 来管理自己的项目,可以按照下面的步骤进行。 1、建立仓库 在需要建立项目的文件夹中,使用 git init 进行仓库的建立。完成后,可以看到文件家中多了一个 .git 隐藏目录。 2、添加文件 使用 git add . 来进行初始文件的添加。这里 . 表示将文件夹下所有的文件都添加进去,我们也可以指定文件进行添加。 3、提交文件 使用 git -m commit -m 'comment' 提交,可以将编辑的内容进行提交。 通过 git show 可以看到项目的一些状态。 这是代码已经在本地管理了,但是本地管理完全体现不出git的优势。 利用github托管自己的项目 1、如果需要将自己的项目托管在github.com上,首先需要创建项目。在 Dashboard 中选择 Create New Repository,填入相关信息后,项目就创建成功了。 2、之后,会有一个如何上传的提示,如下图已经很详细了。
Fork别人的项目 前面提到过,如果只是下载使用别人的代码,通过 git clone 就可以了,当然clone的前提是项目必须是public的,私有的项目是没办法的。如果需要参与,可以通过fork,然后合并的方式。 1、首先需要去自己感兴趣的项目中进行Fork,fork出自己的一份分支来。fork之后,一般可以看到一个ssh访问的地址。例如:git@github.com:cocowool/userguide.git 2、复制代码 使用 git clone git@github.com:cocowool/userguide.git userguide 可以将代码复制到本地的 userguide 文件夹中 3、进行自己的修改,完成后请求原作者合并 git pull person master
下面是一些比较有用的命令的介绍: # 创建一个版本库 git init # 每次修改好了后,可以先将修改存入stage(快照/索引)中 git add <modified files> # 修改了大量文件则使用下面这个命令批量存入 git add . # 使用commit将快照/索引中的内容提交到版本库中 git commit -m "msg" # 也可以将git add与git commit用一个指令完成 git commit -a -m "msg" # 将本地的git档案与github(远程)上的同步 git push # 将github(远程)的git档案与本地的同步(即更新本地端的repo) git pull # 例如,pull指令其实包含了fetch(将变更复制回来)以及merge(合并)操作 git pull git://github.com/tom/test.git # 另外版本控制系统的branch功能也很有意思,若同时修改bug,又要加入新功能,可以fork出一个branch:一个专门修bug,一个专门加入新功能,等到稳定后再merge合并 git branch bug_fix # 建立branch,名为bug_fix git checkout bug_fix # 切换到bug_fix git checkout master #切换到主要的repo git merge bug_fix #把bug_fix这个branch和现在的branch合并 # 若有remote的branch,想要查看并checkout git branch -r # 查看远程branch git checkout -b bug_fix_local bug_fix_remote #把本地端切换为远程的bug_fix_remote branch并命名为bug_fix_local # 还有其它可以查看repo状态的工具 git log #可以查看每次commit的改变 git diff #可以查看最近一次改变的内容,加上参数可以看其它的改变并互相比较 git show #可以看某次的变更 # 若想知道目前工作树的状态,可以输入 git status
开源项目GitHub的更多相关文章
- 2015-2016最火的Android开源项目--github开源项目集锦(不看你就out了)
标签: Android开发开源项目最火Android项目github 2015-2016最火的Android开源项目 本文整理与集结了近期github上使用最广泛最火热与最流行的开源项目,想要充电与提 ...
- [Android开源项目] GitHub开源项目总结 (转)
[Android开源项目] GitHub开源项目总结 GitHub开源项目android-styled-dialogs http://neast.cn/forum.php?mod=viewthread ...
- Android常用酷炫控件(开源项目)github地址汇总
转载一个很牛逼的控件收集帖... 第一部分 个性化控件(View) 主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Gallery.Gri ...
- 加密解密、食谱、新冠序列,各种有趣的开源项目Github上都有
Github上是我们程序员学习开源代码.提升编程技巧的好地方.好学校,但是除了学习,小伙伴们有没有发现过Github上一些特别有意思的项目呢? 今天TJ君就来和大家分享几个自认为特别有趣的开源项目: ...
- GitHub上史上最全的Android开源项目分类汇总 (转)
GitHub上史上最全的Android开源项目分类汇总 标签: github android 开源 | 发表时间:2014-11-23 23:00 | 作者:u013149325 分享到: 出处:ht ...
- 【Android 应用开发】GitHub 优秀的 Android 开源项目
原文地址为http://www.trinea.cn/android/android-open-source-projects-view/,作者Trinea 主要介绍那些不错个性化的View,包括Lis ...
- 扬我国威,来自清华的开源项目火爆Github
前几天TJ君跟大家分享了几个有趣的Github项目(加密解密.食谱.新冠序列,各种有趣的开源项目Github上都有),其中呢,有不少是来自斯坦福大学的项目,当时TJ君就不由得想,什么时候能看到的项目都 ...
- iOS开发之开源项目链接
1. Coding iOS 客户端 Coding官方客户端. 笔者强烈推荐的值得学习的完整APP.GitHub - Coding/Coding-iOS: Coding iOS 客户端源代码 2. OS ...
- 59.Android开源项目及库 (转)
转载 : https://github.com/Tim9Liu9/TimLiu-Android?hmsr=toutiao.io&utm_medium=toutiao.io&utm_so ...
随机推荐
- SQL分隔字符串
创建函数: )) --@str:目标字符串 --@spliter:分隔符 RETURNS @tb TABLE(ch NVARCHAR(max)) AS BEGIN DECLARE @Num INT,@ ...
- SQL*Plus环境下创建PLUSTRACE角色
普通用户在SQL*Plus中开启AUTOTRACE报告时,遇到SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is ...
- 使用Node.js+Socket.IO搭建WebSocket实时应用
Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...
- Linux下的ctrl常用组合键
在linux的命令模式下使用ctrl组合键能让操作更便捷. ctrl + k -- 剪切光标及其后边的内容: ctrl + u -- 剪切光标之前的内容: ctrl + y -- 在光标处粘贴上两个命 ...
- N-Queens
The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens ...
- C Primer Plus 学习体会
本月刚刚开始学习<C primer plus>,之前课上草草学过一遍,讲到指针就结束了.现在重新开始看感觉难度不大只是刚开始接触有些语言细节比较琐碎.学习这一周的体会如下: 诸多前辈推荐的 ...
- 部署 DevStack - 每天5分钟玩转 OpenStack(17)
本节按照以下步骤部署 DevStack 实验环境,包括控制节点和计算节点 创建虚拟机 按照物理资源需求创建 devstack-controller 和 devstak-compute 虚拟机 安装操作 ...
- IEEE 802.11p (WAVE,Wireless Access in the Vehicular Environment)
IEEE 802.11p(又称WAVE,Wireless Access in the Vehicular Environment)是一个由IEEE 802.11标准扩充的通讯协定.这个通讯协定主要用在 ...
- 下拉框-ComboBox
<ComboBox Name="cbBox" SelectionChanged="cbBox_SelectionChanged"></Comb ...
- String 字符串
多行字符串: http://php.net/manual/zh/language.types.string.php#language.types.string.syntax.nowdoc DEMO: ...