GIT 学习手册简介
目的是为学习与记忆 Git 使用中最重要、最普遍的命令提供快速翻阅。 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以及参数。
本手册将从入门到精通指导大家。 首先,我们要从如何以 Git 的思维方式管理源代码开始。
如何以 GIT 的方式思考(这节可以不用看懂,接着看下面的内容,看完就全懂了。)
懂得 Git,第一件重要的事情就是要知道它与 Subversion、Perforce 或者任何你用过的版本控制工具都有着很大的差别。 通常,忘掉你预想的版本控制方式,改以 Git 的方式思考,能够帮助你更好地学习 Git。
让我们从头开始。假设你正在设计一个新的源代码管理系统。在你使用某个工具之前,是如何完成基本的源码版本控制工作的呢十有八九,你只是在项目到达某些阶段的时候,对项目做一份拷贝。
这样,你就可以在事情变得一团糟的时候很方便的返回到之前的状态,或者通过对比当前的项目与之前的拷贝,看看自己在之后的工作中,都做了哪些修改。
如果你有点偏执,你可能会经常作上面说的事情,或许还会给项目拷贝加个日期:
如此,你就有了一堆项目在各个阶段的快照,来作比较、查看。使用这种模式,你还可以有效地与人分享项目变更。 如果你会在项目到达一定阶段的时候给它打个包,丢到自己的 站上,那其他的开发者们,就能很方便地下载它,做点改动,并给你补丁回馈。
以此方式,原先的开发者就能将其他人的改动应用到他的项目中去,其他开发者也能了解你做的变更。其实这便是许多开源项目采用过多年的协作方式。
这办法其实很好使,所以假设我们现在想要写个工具,让这个办法更快、更简单。 我们与其实现一个工具以记录每个文件的版本,可能不如去实现个工具以使创建、储存项目的快照更加方便,不用每次都去人肉作整个项目的拷贝。
这就是 Git 的精要所在。你通过 git commit
告诉 Git 你想保存一份项目快照, Git 就会为你的项目中的各个文件的当前状态存一份记录。之后,绝大部分的 Git 命令都围绕这些记录展开。 比如查看它们的区别(diff),提取它们的内容,等等。
如果你将 Git 看作一个排序、对比以及合并项目更新的工具,那就容易理解状况和正确做事了。
目录
获取与创建项目
- Git使用前配置
- 设置Git本地项目开发库默认路径
- 配置本地用户和邮箱
- init
- clone
基本的快照
- add
- status
- diff
- commit
- reset
- rm, mv
分支与合并
- branch
- checkout
- merge
- log
- tag
分享与更新项目
- fetch, pull
- push
- remote
检查与比较
- log
- diff
一、获取与创建项目
你得先有一个 Git 仓库,才能用它进行操作。仓库是 Git 存放你要保存的快照的数据的地方。
拥有一个 Git 仓库的途径有两种。在已有的目录中,初始化一个新的,其一。 比如一个新的项目,或者一个已存在的项目,但该项目尚未有版本控制。如果你想要复制一份别人的项目, 或者与别人合作某个项目,也可以从一个公开的 Git 仓库克隆,其二。本章将对两者都做介绍。
Git使用前配置
设置Git本地项目开发库默认路径
如果设置了,就不用每次打开Git再cd打开目录了。方法:右键Git Bash快捷图标(桌面图标)属性,找到快捷方式-起始位置,把你的项目地址放在这里就可以了。如下图:
配置本地用户和邮箱
用户名邮箱作用 : 我们需要设置一个用户名 和 邮箱, 这是用来上传本地仓库到GitHub中, 在GitHub中显示代码上传者;
使用命令 :
到此Git客户端已安装及GitHub配置完成,现在可以从GitHub传输代码了。
git init 将一个目录初始化为 Git 仓库
在目录中执行 git init
,就可以创建一个 Git 仓库了。比如,我们恰好有个目录,里头有些许文件,如下:
在这个项目里头,我们会用各种编程语言写 “Hello World” 实例。 到目前为止,我们只有 Ruby 的,不过,这才刚上路嘛。为了开始用 Git 对这个项目作版本控制,我们执行一下 git init
。
现在你可以看到在你的项目目录中有个 .git
的子目录。 这就是你的 Git 仓库了,所有有关你的此项目的快照数据都存放在这里。
恭喜,现在你就有了一个 Git 仓库的架子,可以开始快照你的项目了。
简而言之,用
git init
来在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做,完全是本地化的。
git clone 复制一个 Git 仓库,以上下其手
如果你需要与他人合作一个项目,或者想要复制一个项目,看看代码,你就可以克隆那个项目。 执行 git clone [url]
,[url] 为你想要复制的项目,就可以了。
默认情况下,Git 会按照你提供的 URL 所指示的项目的名称创建你的本地项目目录。 通常就是该 URL 最后一个 /
之后的任何东西。如果你想要一个不一样的名字, 你可以在该命令后加上它,就在那个 URL 后面。
简而言之,使用
git clone
拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。
二、基本快照
Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。本章将对有关创建与提交你的项目的快照的命令作介绍。
这里有个重要的概念,Git 有一个叫做“索引”的东东,有点像是你的快照的缓存区。这就使你能够从更改的文件中创建出一系列组织良好的快照,而不是一次提交所有的更改。
简而言之,使用
git add
添加需要追踪的新文件和待提交的更改, 然后使用git status
和git diff
查看有何改动, 最后用git commit
将你的快照记录。这就是你要用的基本流程,绝大部分时候都是这样的。
git add 添加文件到缓存
在 Git 中,在提交你修改的文件之前,你需要把它们添加到缓存。如果该文件是新创建的,你可以执行 git add
将该文件添加到缓存,但是,即使该文件已经被追踪了 —— 也就是说,曾经提交过了 —— 你仍然需要执行 git add 将新更改的文件添加到缓存去。让我们看几个例子:
回到我们的 Hello World 示例,初始化该项目之后,我们就要用 git add
将我们的文件添加进去了。 我们可以用 git status
看看我们的项目的当前状态。
我们有俩尚未被追踪的文件,得添加一下。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!