E哥的Git教程(一)热身篇

前言

本教程试图解决的问题:

  • 降低学习git的门槛。
  • 用简单的场景带领大家循序渐进的快速掌握git用法。
  • 让大家掌握在实战(真实互联 公司)中使用git的流程和步奏。
  • 如果通过技能提升让大家赚到更高的工资,那是再好不过的事情了。

学习新东西一定要打牢基础, E哥建议看了这篇文章的同学要做到:

  1. 按行为顺序一个章节一个章节的看完 (两个小时的时间不长吧
  2. 把命令都按顺序执行一遍(copy,pase和回车应该不困难吧

开始Git之旅

“呜呜呜,呜呜呜”,睡梦中的李靖被震动的手机铃声吵醒。

“妈蛋,今天周一,又要上班。我什么时候才能赚到足够的钱财务自由啊,想睡到几点就几点!” 半梦半醒的李靖心理默默念道。

“今天是到新单位的第二周,上周五领导说这周一开始要我布置编码任务了。”想到这里李靖一下睡意全无,一咕噜爬起来。洗漱完毕,套上一件白色T恤衫,把笔记本电脑塞进双肩包,背上匆匆出门。

李靖今年24岁,是一名有一年多工作经验的PHP攻城狮。 之前在北京的一家软件公司工作,上周刚跳槽到了一家互联 公司。新公司的工作节奏比之前的传统软件公司快多了,李靖感觉挑战蛮大的。不过一想到已经翻翻的工资,心理顿时充满了干劲。

上午9:30,公司的会议室里,雷神项目主管E哥和大家开完了例行的十分钟站立会,明确布置一天的工作任务后,单独把李靖留了下来,对李靖说:”测试组发现了 站上有几个bug,你刚来,这周就先修复这几个bug把,正好熟悉一下我们的系统。”

”好的, 没问题!“李靖心理还是有把握的,上周代码已经熟悉得差不多,应该问题不大。”不过有个事不是很有把握。“李靖为难道。

”啥问题说出来我们一起想办法解决。“E哥问道。

”我以前的单位用的svn提交代码, 咱们是用git,因为之前没有用过, 我想应该2,3天就能赶上,不过我担心这样会影响一些进度。“李靖心理知道,雷神项目最近正在进行新版开发,计划下周上线,时间比较紧。不过有风险,还是提前说出来比较好,免得到时候拖团队后台。

E哥想了一下,“那这样吧,我给做个简单的git培训,这样你能节省些时间。你拿上电脑到这个会议室,我们花2小时速度的过一下。”

Git的基础概念

三种状态

李靖回工位拿上自己的笔记本电脑,等他返回会议室时,看见E哥拿墨水笔已经在墙壁的白板上画着一幅线框图。

”我们就开始吧!先来了解git一个非常重要的概念,” E哥快速切入主题,“ Git 管理项目时,文件在三个区域流转:Git 的工作目录(working directory),暂存区域(staging area),以及本地仓库(respository)。“

“是的,我们以前遇到过。公司的svn服务器坏了,我们好几天的代码没及时合并,后来解决冲突的代码花了好多时间。“李靖想起以前的经历直摇头。

“Git因为采用分布式版本管理,客户端并不只提取远程仓库的最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。这么一来,服务器或者任何人的电脑坏了不要紧, 从其他人哪里克隆一个就可以了。客户端只有在需要时,才向远程仓库推送或者拉取代码。“

“大部分公司的git环境是这样的。 要注意的一点是,由于公司搭建的gitlab是和互联 的github.com完全不同的环境,所以你在github.com注册的账 是不能在公司的gitlab上使用的,得注册一个新账 。“

“那git如何管理这些不同的账 呢李靖追问道, ”如果我在同一台电脑上既要用公司的环境也想在开源 区提交代码,账 之间会不会产生冲突呢

“你这个问题问得好,” E哥对李靖的好奇心很满意,点点头道:“ 等我们装上git,再来看怎么解决你提的这个问题。“

安装git客户端

“实践出真知,我们边学边动手吧,先在你的笔记本上装一个git客户端。” E哥边说边打开了自己的笔记本电脑。

“你先访问Git 官方站点下载编译好的命令行客户端程序, 址我用QQ传给你。“

http://git-scm.com/download

页面上显示 “下载已经开始”,看样子这个 站自动判断了要下载那个正确的版本,做的还是比较易用。不过浏览器一直显示在加载资源,没有开始下载的意思。

“点击手工下载吧,访问国外的 站比较慢,我们还是节约点时间!” 看来E哥已经对 络不抱希望了。

“下载时间还挺长的,我先去上个卫生间。记住安装时所有选项都选默认,一路点确认就行,这样能统一环境,避免不必要的麻烦。安装完成后在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功。”说完E哥起身离开了会议室。

下载进度在一点一点向前推进, 李靖趁这个空隙走出去到饮水机旁喝了点水,拿两个杯子,泡了两杯立顿红茶,放到会议室的桌上。

Mac安装

Mac的同学可以访问 址:

http://git-scm.com/download/mac

填写你在github 站的用户名和电子邮件,根据提示进行注册。 当成功提交注册信息后,你的电子邮箱会收到一封github发送的确认邮件, 点击邮件中的“verify email address” 按钮确认邮件地址:

Fork demo仓库

为了接下来的学习方便,从E哥的github里复制名叫egit的演示项目。 用你自己的账 登录到github,访问:

https://github.com/liyi-demo/egit

点击右上角的fork按钮, 从E哥的仓库中复制一份grit的代码到你自己的github仓库。

小贴士:
Git使用安全链接来保证git客户端和服务器端的通信安全。最常用到的两种通信协议是https和ssh。

url以 https 为前缀,如: 这样的是https协议,它的好处是在互联 上使用广泛,传输使用443端口,一般公司的防火墙都不会拦截,在互联 上可用性很高。缺点是传输的效率不高,传输数据量大。

url以git@为前缀,如: 这样的是ssh协议,它的优先是传输效率高。缺点是在互联 上使用没有前者广泛。所以github等互联 开源项目会推荐使用https,而公司内部的gitlab,一般推荐用ssh来提高效率。

下一章《Git基础命令》

文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览2929 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2015年9月22日
下一篇 2015年9月22日

相关推荐