图文说Git(1)

作者: ladeng6666 分类: Game design 发布时间: 2015-08-24 21:59 阅读: 5,383

 

首先,特别感谢廖雪峰,他的史上最浅显易懂的Git教程!我真正的认识了Git,本文只是抛砖引玉,更多更详细的Git教程,请参考廖雪峰的博客


懒得看文字,点击下面的音频,让拉登大叔把教程讲给你听。


在电脑上班办公,撰写文件、书稿的时候,大家都会遇上版本的问题。第一次提交给老板的叫”初稿”,如果有更新,可以把文件名改为”最新版”,还有什么”最终版”,然后…然后我的电脑上经常会出现下面的情况。

Git1_1

呃。。。很明显,这是一个让人很想把老板抓狂的现象,到底哪个TMD才是”最新版”?
好在我比较聪明一点,用下面的方式,在项目文件夹下添加一个”提交版”,来管理我的文件版本。

Git1_2

每次向老板提交的时候,都用统一的”日期+名称”的格式,放置在”提交版”文件夹下,这样能在该文件夹下,轻松的找到所有的历史版本。

Git是一个专门面向程序员,进行代码、项目版本管理的工具。我了解这个工具算比较晚的,最近因为和其他人共同撰写一本书的,才有幸了解它。

git_logo

Git对代码文件的管理过程,和我管理书稿的方法类似。其实就像你在手机上安装一个文件管理软件,不过他是通过命令行来实现文件管理的(为什么?因为程序员用代码比较用鼠标快)。
好的,闲话少说,我们开始学习Git,本文以Windows版本为例进行讲解。

安装Git

登录Git官方网站下载Git软件后,打开安装文件,一路”下一步”完成安装,安装成功后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功了。
Git1_4

使用Git

接下来就开始使用Git了。

初始化Git
在电脑的任意位置创建一个文件夹,作为我们的项目文件夹learngit(路径中不要包含中文字符)。然后在文件中右击,选择”Git init here”,将当前文件夹转换为”Git仓库”。

Git1_5

为什么要转换?还记得前面我介绍的文件管理方法吧,我将所有提交的版本,放置在”提交版”文件夹下。转换成Git仓库后,我们的learngit文件夹下,会多出一个.git文件夹,不过它是隐藏的,只有显示隐藏文件才能看到。
Git1_6
这是Git文件管理的核心文件夹,一定一定不要修改或删除这个文件。

初始化项目文件夹后,我们就可以随意在这个文件夹下,添加其他的文件、文件夹,或者修改文件代码啦!比如添加一个helloWorld.txt文件。

Git1_7
剩下的版本管理工作,就交给Git啦。

偷换概念,认识Git
Git管理文件的过程,和我们复制、粘贴文件类似,不过这些操作在Git中并不叫做复制、粘贴,为了方便理解,下面我们把Git中的几个重要概念,转换成对应的Windows文件操作。
Git1_8

  • 工作区:可以理解成–项目文件夹”learngit“。Git把init过的文件夹叫做工作区,工作区中的内容,是我们当前编写代码,进行项目工作的地方。在这里,我们可以随意的添加、修改代码,或者添加其他的代码。
  • 暂存区:可以理解成–剪切板。前面我说过,提交给老板之前,我将当前文件,先复制到剪切板中,然后再粘贴到”.提交版”文件夹中。Git的暂存区就类似于剪切板,暂时的放置需要提交的文件。
  • 版本库:可以理解成–目标文件夹”.提交
    版”。”.提交版”保存了我所有的历史版本稿件。Git中的版本库也是一样的,而且更为强大,它不仅保存了每一个版本,还包含了变更的内容、时间、变更注释等等诸多信息。
  • 远程仓库:可以理解成–网盘。当多个人共同完成一个项目,比如我和几个人一起写稿子时;或者你在办公室写好稿子,回家想继续写。这是可以先把稿子保存到网盘上,再通知团队成员下载,或者回到家下载下来继续编辑。代码也一样,GitHub就是一个远程的仓库,我可以通过Git将版本库的内容全部放到GitHub上。

明白了Git的这几个概念,在结合我们在Windows上操作文件的过程,就可以轻松的掌握Git工具的工作流程了。

Git工作流程
就像前面说的,Git的工作流程,和我们在Windows上操文件一样简单,在把这个关键字换成Git的概念,就变成了Git的工作流程。
Git1_10

吼吼,貌似多了几个陌生的英文单词,add、commit、push…这些是Git常用的操作命令。别着急,这一节就到这里,我们暂且休息一下,下一节继续学习Git的常用操作。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

6条评论
  • 阿柑

    2015 年 9 月 9 日 下午 4:13

    拉登大叔,请问你的WordPress主题能分享下吗?还有你的代码插件是啥呢。

    1. ladeng6666

      2015 年 9 月 9 日 下午 8:32

      邮箱留下,我发你

      1. 阿柑

        2015 年 9 月 10 日 上午 10:45

        100042145@qq.com 感谢感谢

        1. ladeng6666

          2015 年 9 月 10 日 下午 7:13

          已发,请查看邮件

          1. 阿柑

            2015 年 9 月 14 日 下午 5:44

            感谢感谢

  • xsstomy

    2015 年 11 月 5 日 上午 10:26

    拉登大叔,WordPress主题和代码插件,也发我一份吧。感谢。674371968@qq.com

发表评论

电子邮件地址不会被公开。 必填项已用*标注