1. Git 是由linux内核的开发者linus Torvalds于2005年发行的软件配置管理工具,用于管
理软件进化过程中的变化。
2. Git 仓库:
(1)由三个部分组成:
a. .git 目录:为本地的CMDB
b. 工作目录:为本地的文件系统
c. 暂存区(staging area):隔离工作目录与git仓库
(2)每一个文件都属于以下三种状态:
a. 已修改(文件在工作目录上与在git仓库上的不同,但却不在暂存区)
b. 已暂存(文件被修改并且被增加给了暂存区)
c. 已提交(在工作目录上与git目录上的文件保持一致)
状态转化:a->b 使用命令 git add,b->c 使用命令 git commit
git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行一次
git commit就可以一次性把暂存区的所有修改提交到分支。
3. 版本之间的演化关系图(Object Graph):
其一条边A->B表示了“在版本A的基础上作出变化,形成 了版本B”。
Commit(提交)是图中的节点,其是整个项目的一张快照。
对于任何数据可观的项目来说,大多数文件并不会在每一次都会改变。每一次更改
都拷贝一遍文件系统是极其浪费的,因此Git并不会这么做。
对于每一个版本的单独文件,Git只存储一次,并允许多个commit共享一个copy。
每一个commit都有日志数据-who。when,short log message等等。
传统VCS与Git管理变化的差异:
4. 本地仓库和远程仓库之间的交流:
通过 git push & git pull 操作来实现。
5. Git支持分支和合并操作:
在Git中创造分支与合并分支的实例:
6. Git支持多人协作:
7. GitHub:基于web的Git服务器,提供Internet上的代码托管服务
工作过程:
(1)基本过程:commit,branch,merge
(2)协作过程:fork和pull request
8. git教程参考:
廖雪峰的官方网站:
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d599b3aed534aaab22a0db6c4e07fd0000