使用 Git 和 GitHub 有一段时间了,总结下经验。

起初接触 Git 是先遇到 GitHub 的,当时傻傻分不清这两者的区别,毕竟名字都那么像,刚开始只想用酷酷的方法 clone 代码(SSH),就在 Git 上多花了点功夫,一直看 Pro Git 这本书(在线,免费,准确,详细,而且有中文的,现在更新到第二版了),现在看来也,确实值得。

那么 Git 和 GitHub 到底是什么?

  • Git 是分布式版本控制系统
  • GitHub 是最大的 Git 版本库托管商

“大部分 Git 版本库都托管在 GitHub,很多开源项目使用 GitHub 实现 Git 托管、问题追踪、代码审查以及其它事情。 所以,尽管这不是 Git 开源项目的直接部分,但如果想要专业地使用 Git,你将不可避免地与 GitHub 打交道,所以这依然是一个绝好的学习机会。”

Git 和 GitHub 就是这么个关系,Git 管理代码仓库, GitHub 是个超大的型的代码仓库, GitHub 上有很多,很多的开源,非开源代码仓库。
GitHub 上的私有仓库是需要付费的,用私有仓库的收益维护开源仓库,不能不说是个高明的方法,即支持了开源,又不依赖外部。
程序员们都喜欢 GitHub,科技公司也乐于使用 GitHub,在这里能找到大量的程序源码,又能在世界面前展示自己的才华,So Fork me on GitHub !!

只是 GitHub 上的仓库有些处于半墙状态,所以 clone,下载会很慢

Git 分布式版本控制系统,简单来说就是版本控制,分布式通俗来说就是可以有多个仓库,可以有多个远程仓库,多个本地仓库。
“版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。”

版本控制在我看来是软件开发中的后悔药,错误修改了代码,尝试训插入第三方的代码,出了 BUG,修改起来是十分辛苦的事,可以用版本控制恢复到去错前的状态,这样就免去了许多麻烦。

Git 有非常灵活的控制方法,而且多分支,多仓库的形式更方法大型,多人的合作开发。

Git 是跨平台的,在 MAC 下系统集成,windows 和 lniux 都可以方便的安装
windows 下安装来其他软件安装一样,只要一路下一步就可以了,中途询问的选项有一定的‘风险’,这可能会更改系统的一些默认命令,第一次使用就不必改了,以后熟了,再改。下载地址(更详细的安装看 Pro Git1.5 起步 - 安装 Git

“Git 有多种使用方式。 你可以使用原生的命令行模式,也可以使用 GUI 模式,这些 GUI 软件也能提供多种功能”
命令行 才能体现出装X的逼格
GitHub Desktop 是 GitHub 的推出的 Git 图形管理工具,可以很方便的和 GitHub 上仓库,团队联系。
大部分的集成编译器都有集成 Git, 使用方便,如果你没用过可以去你的编译器上找找,尝试一下

命令行是 Git 功能最强大的,上手难度相对大,不过大部分 GUI 成提供了命令行功能,所以用好命令行才是进阶的必经之路。

Git & GitHub的更多相关文章

  1. git &github 快速入门

    本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...

  2. git+github上传与管理

    1.首先下载并安装git,方便管理github上的代码 https://git-scm.com/downloads 2.然后点击安装好的git bash(注册好自己的github) git confi ...

  3. git/github学习笔记

    郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...

  4. Git/GitHub 初用体验与总结

    Git,一个神奇而又陌生的东西,居然到现在才去了解它,就像有一位仁兄说的,现在不会用Git真的都不好意思说自己搞IT的. 简单的讲,这Git是目前最先进的分布式版本控制系统,和他相对应的就是众所周知的 ...

  5. git github简单知识

    Git 常用命令 git init here -- 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息.标记等内容 git remo ...

  6. Git/Github + TortoiseGit 使用教程

    前言 Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 在github上有很多优秀的项目,一个伟大的学习宝库.本文分享使用tortoisegit对github/ ...

  7. Git+GitHub 使用小结

    1.Git安装完成后需要做的配置            $ git config --global user.name "Your Name"        $ git confi ...

  8. Git & Github 一页简明笔记

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...

  9. git/github初级运用自如(zz)

    ----//git/github环境配置 一 .  github上创建立一个项目 用户登录后系统,在github首页,点击页面右下角“New Repository” 填写项目信息: project n ...

  10. git/github 使用

    原文:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html git/github学习笔记 Posted on 2011-08-25 2 ...

随机推荐

  1. web前端面试题总结

    HTML Doctype作用? 严格模式与混杂模式如何区分?它们有何意义? (1).<!DOCTYPE> 声明位于文档中的最前面,处于 <html> 标签之前.告知浏览器的解析 ...

  2. web前端之HTML中元素的区分

    作为前端人员,我们就是要与各种超文本标记打交道,用到各种不同的标签元素.在使用的时候不知道有没有注意到他们的分类归属?现在就来说一说博主的见解: 目前博主总结了三种分类方法:一是按封闭来划分,一是按显 ...

  3. [OC][地图] 高德地图之定位初探(一)

    使用前的说明 高德地图开放平台的iOS定位模块网址-->http://lbs.amap.com/api/ios-location-sdk/summary/ 高德地图有Web端.android平台 ...

  4. C#的四种Timer介绍

    一.Timer的几个类别 1.System.Threading.Timer 2.System.Timers.Timer 3.System.Windows.Forms.Timer 4.System.Wi ...

  5. Node.js学习-1

    关于node.js 首先,node.js不是一门语言,是一个平台.因为在以前,javascript主要是用于网页的交互,所以必须依附于浏览器存在,只有在浏览器上才能运行javascript. 后来ja ...

  6. an interview question(3)

    最近看了些C面试题顺便复习一下C语言,现贴一些出来和大家分享. #include <stdio.h> void main () { ,,,,};--------- *(ptr++)+=; ...

  7. c#winform程序退出的方法

    一共有4种方式: 1.this.Close();  只是关闭当前窗口,若不是主窗体,无法退出程序,另外若有托管线程(非主线程),也无法干净的退出: 2.Application.Exit();强制所有消 ...

  8. 转:Eclipse插件开发之TreeViewer

    http://www.tuicool.com/articles/e6fmE3R contentprovider在插件开发和RCP(Rich Client Platform)开发中常常被用到,譬如你要创 ...

  9. JQuery_元素属性操作

    除了对元素内容进行设置和获取,通过jQuery 也可以对元素本身的属性进行操作,包括获取属性的属性值.设置属性的属性值,并且可以删除掉属性. <script type="text/ja ...

  10. x-csrf-token