GitHub入门之路(1)
介绍
从本篇文章开始,是一系列介绍GitHub相关内容以及Git的一些基本操作的文章,记录了自己的学习过程。
概要
简单介绍GitHub是什么,Git又是什么。
1、Git是什么
Git是一款分散型的版本管理系统,是为了版本管理而设计的软件,由Linux创始人Linus Torvalds所开发。
版本管理就是管理更新的历史记录。在软件开发过程中往往需要记录下添加或修改源代码的过程,将软件回滚到特定的阶段,恢复误删除的文件等。类似于这样的功能,Git都能够为我们提供。
在Git出现之前,已经有类似的版本管理系统例如SVN(Subversion)。与Git相对,SVN是一款集中型的版本管理系统,两者的不同点如下:
- 集中型:集中型版本管理系统,将代码仓库集中存放在一个服务器中,只存在一个中央仓库,便于管理。但是当开发环境与服务器断开连接时,就无法再继续往中央仓库提交自己的代码,开发也就无法继续进行。而且当你提交自己的代码后是直接并入到中央仓库,一旦代码出现严重问题,所有开发者都将受到波及。
- 分散型: 以Git为代表的分散型版本管理系统,每一个开发者都拥有着一个属于自己的仓库,开发者不必连接远程仓库就可以进行开发活动。每一次的更改都可以在本地实时得到反馈,不会影响主版本。确定无误后,向主要仓库控制者发起合并请求,在被采纳之后代码就并入了最新的版本之中。即使主版本崩溃,也可以随时从本地仓库中寻找到一个新的替代者。
集中型与分散型更有优缺点,选择哪一个主要看具体的需求,但因为本文是介绍Git,那么理所应当的我们就选择了Git,也就是分散型。
2、GitHub是什么
在了解到什么是Git后,接下来就是这个名字和他很像的GitHub了。
GitHub是一家总部位于美国旧金山的公司,他为开发者提供Git仓库的托管服务。让开发者与全世界的开发者共享代码的完美场所。
除此之外,它还提供了一系列的功能,帮助开发者高效率、高品质地进行代码编写,在之后会逐一介绍。
GitHub上聚集了世界各地的软件开发者,素未谋面的开发者们隔着半个地球的距离共同开发软件。众多的程序员通过GitHub公开源代码,同时也利用GitHub支持着自己日常的软件开发。
因此在GitHub上有着一系列瞩目的开源项目,所有的开发者都可以贡献自己的代码,也可以从中汲取灵感,帮助自己来开发更好的软件。
3、Git与GitHub的区别
显而易见,GitHub与Git是完全不同的两个东西,但两者又有着密不可分的联系。
在Git中,我们将源代码放入名叫“Git 仓库”的资料库中并加以利用。而GitHub则是在网络上提供Git仓库的一项服务。换言之,GitHub上的所有公开源代码都是由Git进行管理的。因此理解Git,是运用GitHub的关键所在。
本文只是简单介绍了一下Git与GitHub,对此有兴趣的可以在网上寻找相关资料,做进一步的了解。
GitHub入门之路(1)的更多相关文章
- github入门到上传本地项目【网上资源整合】
[在原文章的基础上,修改了描述的不够详细的地方,对内容进行了扩充,整合了网上的一些资料] [内容主要来自http://www.cnblogs.com/specter45/p/github.html#g ...
- github入门到上传本地项目
GitHub是基于git实现的代码托管.git是目前最好用的版本控制系统了,非常受欢迎,比之svn更好. GitHub可以免费使用,并且快速稳定.即使是付费帐户,每个月不超过10美刀的费用也非常便宜. ...
- 小猪的Android入门之路 Day 3 - part 3
小猪的Android入门之路 Day 3 - part 3 各种UI组件的学习 Part 3 本节引言: 在前面两个部分中我们对Android中一些比較经常使用的基本组件进行了一个了解, part 1 ...
- 小猪的Android入门之路 Day 7 part 2
小猪的Android入门之路 Day 7 part 2 Android的数据存储与訪问之--SharedPreferences(保存偏好參数) ---转载请注明出处:coder-pig 本节引言: 在 ...
- 小猪的Android入门之路 day 1
小猪的Android入门之路 Day 1 Android相关背景与开发环境的搭建 ------转载请注明出处:coder-pig 本节引言: 随着社会经济的发展,移动互联网的越来越热,手机APP开发显 ...
- 小猪的Android入门之路 Day 4 - part 1
小猪的Android入门之路 Day 4 - part 1 Android事件处理机制之--基于监听的事件处理机制 本节引言: 在開始本个章节前,我们先回想下,如今我们已经知道了android的一些相 ...
- 《Github入门与实践》读书笔记 蟲咋先生的追求之旅(上)
<Github入门与实践>作者: [日] 大塚弘记 译者:支鹏浩/刘斌 简介 本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的协作 ...
- 服务端技术进阶(八)GitHub入门篇
服务端技术进阶(八)GitHub入门篇 前言 在投递简历的过程中,发现有的公司会要求填写自己的GitHub地址,而自己却还没有GitHub帐号,准确点说是自己还不太会使用GitHub.(貌似开源社区中 ...
- Github入门详情教程
前言 之前我写了一篇文章<一篇文章了解Github和Git教程>还延伸了几篇阅读,对大部分小白很有用,那么我继续普及下Github页面及其概念. 定义 GitHub 是一个网站,一个面向开 ...
随机推荐
- 将简单的lambda表达式树转为对应的sqlwhere条件
1.Lambda的介绍 园中已经有很多关于lambda的介绍了.简单来讲就是vs编译器给我带来的语法糖,本质来讲还是匿名函数.在开发中,lambda给我们带来了很多的简便.关于lambda的演变过程可 ...
- Oracle实战笔记(第三天)
导读 今天的主要内容有:java连接Oracle.事务.Oracle中的事务处理.Oracle函数. 一.Java连接Oracle的两种方式 第一种:桥连接(JDBC_ODBC)(不推荐) 1.准备工 ...
- UE4 分层材质 Layerd Materials
在UE4中最正规的材质制作流程就像: 建立新材质,并将其调整为达至完美. 在内容浏览器中,建立新材质函数,并将所有材质函数节点复制/粘贴到其中. 将网络连接到新的 Make Material Attr ...
- JSP内置对象1(request,response,session)
request对象 response对象:请求重定向与请求转发的区别. session对象:表示客户端与服务器的一次会话,也就是用户浏览网站所花费的时间.在服务器的内存中保存着不同用户的session ...
- MYSQL 数据库导入导出命令
在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生.所以一般推荐用SQL脚本形式导入.下面分别介绍两种方法. MySQL命令行导出数据库 1,进入MySQL目录下的bin ...
- [机器学习]模型评价参数,准确率,召回率,F1-score
很久很久以前,我还是有个建筑梦的大二少年,有一天,讲图的老师看了眼我的设计图,说:"我觉得你这个设计做得很紧张".当时我就崩溃,对紧张不紧张这样的评价标准理解无能.多年后我终于明白 ...
- sqlite效率探测
在编译后当然就是使用sqlite,贸贸然去测试了一下创建数据库,插入数据,仅几条数据,发现,真不错的数据库,后来把数据量提高到10000的 时候,发现,怎么这么慢,后来自己都受不了,网上一查,原来是如 ...
- sql子查询
一.子查询入门: 1.单值子查询: 单值子查询的唯一限制:子查询的返回值必须只有一行记录,而且只能有一列(又被称为标量子查询). 可以使用在select语句的列表.表达式中,以及where语句中等. ...
- Hadoop问题:启动hadoop 2.6遇到的datanode启动不了
问题描述:第一次启动输入jps都有,第二次没有datanode 日志如下: 查看日志如下: -- ::, INFO org.mortbay.log: Started HttpServer2$Selec ...
- maven配置文件详解
settings.xml 本篇文章主要对maven中setting.xml配置文件进行解释 1.声明规范 <settings xmlns="http://maven.apache.or ...