Git & GitHub
使用 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 Git: 1.5 起步 - 安装 Git)
“Git 有多种使用方式。 你可以使用原生的命令行模式,也可以使用 GUI 模式,这些 GUI 软件也能提供多种功能”
命令行 才能体现出装X的逼格
GitHub Desktop 是 GitHub 的推出的 Git 图形管理工具,可以很方便的和 GitHub 上仓库,团队联系。
大部分的集成编译器都有集成 Git, 使用方便,如果你没用过可以去你的编译器上找找,尝试一下
命令行是 Git 功能最强大的,上手难度相对大,不过大部分 GUI 成提供了命令行功能,所以用好命令行才是进阶的必经之路。
Git & GitHub的更多相关文章
- git &github 快速入门
本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...
- git+github上传与管理
1.首先下载并安装git,方便管理github上的代码 https://git-scm.com/downloads 2.然后点击安装好的git bash(注册好自己的github) git confi ...
- git/github学习笔记
郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...
- Git/GitHub 初用体验与总结
Git,一个神奇而又陌生的东西,居然到现在才去了解它,就像有一位仁兄说的,现在不会用Git真的都不好意思说自己搞IT的. 简单的讲,这Git是目前最先进的分布式版本控制系统,和他相对应的就是众所周知的 ...
- git github简单知识
Git 常用命令 git init here -- 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息.标记等内容 git remo ...
- Git/Github + TortoiseGit 使用教程
前言 Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 在github上有很多优秀的项目,一个伟大的学习宝库.本文分享使用tortoisegit对github/ ...
- Git+GitHub 使用小结
1.Git安装完成后需要做的配置 $ git config --global user.name "Your Name" $ git confi ...
- Git & Github 一页简明笔记
由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...
- git/github初级运用自如(zz)
----//git/github环境配置 一 . github上创建立一个项目 用户登录后系统,在github首页,点击页面右下角“New Repository” 填写项目信息: project n ...
- git/github 使用
原文:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html git/github学习笔记 Posted on 2011-08-25 2 ...
随机推荐
- Jquery中each的三种遍历方法
Jquery中each的三种遍历方法 $.post("urladdr", { "data" : "data" }, function(dat ...
- oracle 自增ID
drop sequence SEQ_sys_dictionary; create sequence SEQ_sys_dictionary INCREMENT BY START WITH ; creat ...
- VB默认属性、动态数组、Range对象的默认属性的一点不成熟的想法
1.默认属性 VB6.0有默认属性的特性.当没有给对象指定具体的属性时,"默认属性"是VB6.0将使用的属性.在某些情形下,省略常用属性名,使代码更为精简. 因为CommandBu ...
- 安装配置dradis
github:https://github.com/dradis/dradis-ce/blob/master/README.md安装出现错误:== Copying sample files == == ...
- 组合suan
/// 求从数组a[1..n]中任选m个元素的所有组合. /// a[1..n]表示候选集,n为候选集大小,n>=m>0. /// b[1..M]用来存储当前组合中的元素(这里存储的是元素 ...
- NSJSONSerialization(json序列化)
//通过调用isValidJSONObject来判断Foundation对象是否可以转换为JSON数据 NSJSONSerialization isValidJSONObject:obj 我们能利用N ...
- 自定义一个类似UIAlertView的弹出框
这个是和UIAlertView类似,但是可以自定义view的样式废话不多说,上代码: 首先第一步:创建一个继承自View的类如: #import <UIKit/UIKit.h> @clas ...
- 《C++ Primer》学习笔记【第三部分 类设计者的工具】
第13章 拷贝控制 使用default:=defult只能修饰默认构造函数或拷贝控制成员,显式地要去编译器生成合成的版本. 使用delete:=delete通知编译器不希望定义这些成员,禁止试图使用它 ...
- Jenkins+ANT+SVN快速搭建持续集成环境
伟大的语言都从helloworld开始,这里我们用Jenkins+ANT+SVN来搭建这一套持续集成环境. 环境准备: 一台已经配置好Jenkins和Ant的机器. 项目准备: 用Ecplise建立一 ...
- 18TH赛事管理
赛事管理者 项目psp: 一.计划 估计这个任务需要7天时间 二.开发 1.需求分析 作为一个赛事管理者,我希望知道每场比赛的队伍得分和积分情况,以便给每队进行排名. 2.生成设计文档 查询出每场得分 ...