初识GitHub
1. 什么是GitHub
GitHub是一个面向开源及私有软件项目的托管平台,它只支持git这一种版本管理技术,故名GitHub。对于大部分用户来说,GitHub是一个托管代码的地方,用于备份其本地仓库的代码。
2.GitHub和Git的区别
本人刚开始学习编程的时候也分不清两者的区别,以为GitHub就是Git,但是它们其实是有本质上的区别的。
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git是大名鼎鼎的Linux发明者Linus Torvalds 开发的。不管是想要学习GitHub,还是从事编程相关行业的工作,git都是一门必须要学习的技术,所以从现在开始学习和了解git技术吧!
而GitHub已经在上面介绍过了,是一个基于git技术的版本托管平台。所以Git知识GitHub上面用来管理项目的一个工具而已,而GitHub的功能则远比这个强大。
3. GitHub 有什么用
- 学习优秀的开源项目
开源社区一直有一句流行的话叫「不要重复发明轮子」,某种意义上正是因为开源社区的贡献,我们的软件开发才能变得越来越容易,越来越快速。试想你在做项目时,如果每一模块都要自己去写,如网络库、图片加载库、ORM库等等,自己写的好不好是一回事,时间与资源是很大的成本。对于大公司可能会有人力与资源去发明一套自己的轮子,但是对于大部分互联网创业公司来说时间就是一切。而且你在使用开源项目的过程也可以学习他们优秀的设计思想、实现方式,这是最好的学习资料,也是一份提升自己能力的绝佳方式!
- 多人协作
如果你想发起一个项目,比如翻译一份不错的英文文档,觉得一个人的精力不够,所以你需要更多的人参与进来,这时候 GitHub是你的最佳选择,感兴趣的人可以参与进来,利用业余时间对这个项目做贡献,然后可以互相审核、合并,简直不要太棒!
- 搭建博客、个人网站或者公司官网
这个就不用多说了,现在越来越多的博客都是基于 GitHub Pages来搭建的了,你可以随心所欲的定制自己的样式,可以给你博客买个逼格高的域名,再也不用忍受各大博客网站的约束与各式各样的广告了!
- 写作
如果你喜欢写作,而且基于 Markdown, 并准备出版书籍,那么推荐你用 Gitbook ,技术写作人的最爱!
- 个人简历
如果你有一个活跃的 GitHub账号,上面有自己不错的开源项目,还经常给别的开源项目提问题,push 代码,那么你找工作将是一个非常大的优势,现在程序员的招聘很多公司都很看中你 GitHub 账号,某种意义上 GitHub就可以算是你的简历了。而且不仅国内,很多国外的科技公司都会通过 GitHub 来寻找优秀的人才。
GIT快速入门
关于GitHub的介绍就到这里了,本篇文章的目的是让读者能快速入门Git,运用Git命令行操作本地仓库,并同步到远程仓库。下文会先介绍一些最基本的Git知识和常用的Git操作。
1. 什么是Git
上文说了,Git是一款新时代的版本控制工具,那么版本控制到底是什么意思呢?如何去理解版本控制工具呢?下面几个例子大家可以思考一下。
在软件开发中,源代码是最重要的,那么对于源代码的管理也就非常重要:
比如为了防止代码的丢失,肯定本地机器与远程服务器都要存放一份,而且还需要有一套机
制让本地可以跟远程同步;
又比如我们经常是好几个人做同一个项目,都要对一份代码做更改,这个时候需要大家互不
影响,又需要各自可以同步别人的代码;
又比如我们开发的时候免不了有bug,有时候刚发布的功能就出现了严重的bug,这个时候需
要紧急对代码进行还原;
又比如随着我们版本迭代的功能越来越多,但是我们需要清楚的知道历史每一个版本的代码
更改记录,甚至知道每个人历史提交代码的情况;
等等等类似以上的情况,这些都是版本控制系统能解决的问题。所以说,版本控制是一种记
录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统,对于软件开发领域来
说版本控制是最重要的一环,而 Git 毫无疑问是当下最流行、最好用的版本控制系统。
2. Git安装
上面说了,Git 是一个版本控制系统,你也可以理解成是一个工具,跟 Java 类似,使用之前
必须得先下载安装,所以第一步必须要安装,我用的是 Mac , Mac 上其实系统自带 Git 的,
不过这里统一提供一下各平台的安装方式,这部分就不过多介绍,相信大家这里搞的定。
- Mac:https://sourceforge.net/projects/git-osx-installer/
- Windows:https://git-for-windows.github.io/
- Linux:apt-get install git