码迷,mamicode.com
首页 > 其他好文 > 详细

Git使用教程

时间:2019-01-01 19:54:41      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:opensuse   密码   openbsd   name   应该   dex   src   scm   内容   

在 Windows/Mac上安装 Git

  Step One:下载 Git -> https://git-scm.com/download

  windows也可以使用网盘下载:

    64位:http://pan.baidu.com/s/1nv6I9rr 密码:4plg

    32位:http://pan.baidu.com/s/1bp3Flnx 密码:l0qi

  Step Two:安装,一路“Next”默认安装即可。

在 Linux 上安装 Git
  在 Linux 上安装 Git 就太简单了,切换到 root 用户,并执行下边语句(这里是Centos):

$ yum install git

 

  一切都是自动化进行,除了有时候问你 [y/N] 时需要你按下 y,并确认即可。

  其他 Linux/Unix 系统使用下边命令:

Debian/Ubuntu系统:
$ apt-get install git

Fedora(21 之前)系统:
$ yum install git

Fedora(22 及之后)系统:
$ dnf install git

Gentoo系统:
$ emerge --ask --verbose dev-vcs/git

Arch Linux系统:
$ pacman -S git

openSUSE系统:
$ zypper install git

FreeBSD系统:
$ cd /usr/ports/devel/git
$ make install

Solaris 11 Express系统:
$ pkg install developer/versioning/git

OpenBSD系统:
$ pkg_add git

  注意:请确保你的 Linux 操作系统可以正常联网,并你已经会使用 Vim 或 Emacs 编辑器。

 

初次使用 Git 前的配置

  成功安装完 Git 的第一件事儿就是让它知道主人是谁!这个操作非常重要,因为每一个 Git 的提交都会使用到这些信息,一旦确定不可更改。在命令行模式(Win+r)里输入以下命令:

> git config --global user.name "q_z_g163"
> git config --global user.email "1098693818@qq.com"

  使用 git config --list 命令可以查看信息是否写入成功:技术分享图片

 

Git 记录的是什么?
  如果你有使用 SVN 等其他版本控制系统的经验,你应该知道它们的工作原理是记录每一次的变动。技术分享图片

  差不多就是上面酱紫,每一次版本迭代,SVN 记录的是文件的变化内容。通常让我们自己来写一个版本管理工具也会首选这样的思维吧?就像写小说一样,每次就增加一个章节,修改若干错别字,最终装订成册……没必要为每次的修改都拷贝一整本书!这种存储方式也是有名堂的,叫增量文件系统(Delta Storage systems)。

  而 Linus 童鞋这次却决定剑走偏锋,以一种看似“异端”的方式来处理版本迭代:技术分享图片

  如上,如果每个版本中有文件发生变动,Git 会将整个文件复制并保存起来。这种设计看似会多消耗更多的空间,但在分支管理时却是带来了很多的益处和便利(分支管理我们后边会讲,不急)。

  突然想到了一句话:普通的程序员是把很多的时间放在写代码和调 Bug 上,而优秀的程序员是将更多的精力放在设计上……

 

 三棵树:

  你的本地仓库有 Git 维护的三棵“树”组成,这是 Git 的核心框架。这三棵树分别是:工作区域、暂存区域和 Git 仓库。技术分享图片

  工作区域(Working Directory)就是你平时存放项目代码的地方。

  暂存区域(Stage)用于临时存放你的改动,事实上它只是一个文件,保存即将提交的文件列表信息。

  Git 仓库(Repository)就是安全存放数据的位置,这里边有你提交的所有版本的数据。其中,HEAD 指向最新放入仓库的版本(这第三棵树,确切的说,应该是 Git 仓库中 HEAD 指向的版本)。

  OK,Git 的工作流程一般是酱紫:

    1. 在工作目录中添加、修改文件;

    2. 将需要进行版本管理的文件放入暂存区域;

    3. 将暂存区域的文件提交到 Git 仓库。

  因此,Git 管理的文件有三种状态:已修改(modified)、已暂存(staged)和已提交(committed),依次对应上边的每一个流程。

  等等……看到这里,有些鱼油肯定有疑惑:“你说 Git 仓库用于存放每次的版本迭代,我可以理解。但为何还要多增加一个暂存区域呢?”

  我这里打个比方:像某些厂家开发一个产品,一般他们都留有一手,不会把该产品的所有特性一次性发布。通过产品的迭代,每年秋季你就可以开开心心地买到又有一两项新功能的“新”产品了。

  技术分享图片 我好像知道的太多了……

  So,有时你并不想把工作目录中所有的新功能都提交到最新版本,你就可以先添加一些本次需要提交的文件到暂存区,然后从暂存区中提交它们……所以暂存区在江湖中有个外号叫“索引”(Index)。

  记住这三棵树,因为后边教的所有 Git 操作基本上都是在这三棵树之间搞来搞去!

 




 

 

Git使用教程

标签:opensuse   密码   openbsd   name   应该   dex   src   scm   内容   

原文地址:https://www.cnblogs.com/tianqizhi/p/10205602.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!