我一直认为 GitHub 是一座宝藏,想让更多人的知道它、加入到这个社区中。本人能力有限,如果文中出现不对的地方,欢迎指正交流。

一、前言

大家好,我是削微寒(xuē wēi hán),一个走在进阶路上的程序员。

一个人走在路上,不如和志同道合的小伙伴一起前行。所以,我喜欢分享一些自己的收获,记录过程放到自己的 blog 上,主要是方便以后查阅(我记性不好)。如果我的文字能够帮助到其他人,那真是极好的!

编程进阶的道路是坎坷的,没有任何捷径。这个时期只能是积累、吸收、学习、坚持,做到量的积累,到质的飞跃

古语有云:‘书山有路,勤为径’、‘不积跬步,无以至千里’

编程是一个动手实践性的学科,多动手才是王道,积累代码量。那么问题就来了:写什么呢?

二、什么是 GitHub

如果把编程比做绘画,那么 GitHub 就是一个‘巨型画展’,里面展出了各式各样、各种风格的‘画作’,有名家的作品,有默默无闻的作者的作品。整个画展中的任何作品,你可以随意浏览,任意临摹,与作者讨论作品中的想法、思路。

同比到编程中,就是各种‘编程作品’。通过‘临摹’和学习别人的代码,你就会知道要写些什么了。不要想着上来就写一个特别 NB 的项目,优秀的项目不是一朝一夕完成的,都是一步步地借鉴、优化、完善——罗马不是一天建成的

一位前辈告诉说过:优秀的程序最重要的是什么?匠心!编写优秀的程序需要有精益求精的态度。追求的卓越的过程就是进阶的过程。

在 GitHub 上,你可以与百万其它程序员一起创造有趣、有价值的程序。准备好,加入 GitHub 了吗?

三、开始 GitHub 探索之旅

这章主要讲述快速使用 GitHub,不会涉及任何 Git 命令

3.1 注册

只需要三步,10秒:注册地址

  1. 依次输入用户名、邮箱、密码

  2. 选择账号性质:Unlimited public repositories for free(免费)、付费,免费账号就可以了

  3. 调查问卷,skip this step(跳过这步)

  4. 注册成功

最后,登陆自己的邮箱点击注册认证链接,认证邮箱。

3.2 概述

GitHub 算是一个‘程序员的社交’网站,就像微博一样,可以 Follow 用户。针对于程序员的社交又有对项目的一系列操作例如:Watch项目、Fork项目、Star项目

3.2.1 信息流页

登陆后默认进入这个页面,该页面会展示你的项目动态、你关注的用户的动态(Star、Fork、Crtead等)、你Watch的项目的动态(修改、Issues等)

3.2.2 个人首页

右上角头像向下尖头下拉框中的 Your profile 进入个人首页,类似于微博的个人首页一样

3.2.3 项目

项目分为三种:自己创建的、别人的项目、Fork的项目

下面以 [requests] 项目为例:

  1. Watch:类似订阅,订阅这个项目的动态,这个项目有任何修改都会显示在你的‘信息流页’
  2. Star:等同于赞
  3. Fork:类似于拷贝,拷贝这个项目到你的账号下,你的账号下就会有一个和这个项目一摸一样的项目
  4. Issues:提问题的地方,这里可以讨论项目中的 bug 和作者交流

3.2.4 寻找项目

  1. 首页的搜索
  2. explore:官方推出的推荐页
  3. trending:GitHub 热点项目(用户 star 最多的项目)
  4. 我发起的 HelloGithub —— 分享、推荐 GitHub 上好玩、容易上手的项目

至此为止,就可以根据自己的兴趣爱好,找自己感兴趣的项目,查看浏览别人的代码和思路了。学习了别人的代码,是时候开始自己的项目了!

下面会依次介绍如何创建项目、把自己的代码托管在 GitHub上、向别的项目提交代码(未完待续)

四、开始自己的项目

五、参与到开源项目

最新文章

  1. Theano Inplace
  2. Java—输入输出技术
  3. Java基础之扩展GUI——添加状态栏(Sketcher 1 with a status bar)
  4. kuangbin_MST B (POJ 1287)
  5. linux学习笔记2-命令总结4
  6. 【转】C#之继承
  7. NSS_10 EXTJS给弹出的子窗口传递参数
  8. Android开发手记(14) 使用MediaPlayer播放mp3
  9. Sys.WebForms.PageRequestManagerParserErrorException:无法分析从服务器收到的消息
  10. Spring AOP报错
  11. [SQL基础教程] 4-2 数据删除(DELETE)
  12. tomcat调度配置
  13. week07 13.2 NewsPipeline之 二 News Fetcher - Xpath
  14. 如何用MAT分析Android程序的内存泄露
  15. BZOJ4589 Hard Nim(快速沃尔什变换FWT)
  16. 移动端web,tap与click事件
  17. Unity5中新的Shader体系简析
  18. mget命令, ftp命令详解
  19. VMware安装win7:units specified don't exist问题
  20. java实现的18位身份证格式验证算法

热门文章

  1. python 接口自动化测试--框架整改(五)
  2. 队列工厂之RedisMQ
  3. struct 和typedef struct的区别
  4. otool介绍(转http://www.mc2lab.com/?p=68)
  5. JAVA基础知识(2)--关键字final的使用
  6. [SQL] SQL 基础知识梳理(七)- 集合运算
  7. css远距离链接
  8. C语言::模拟实现strlen函数
  9. CSS3学习笔记(2)-CSS盒子模型
  10. python urllib模块