GIt的基本知识

Posted 我爱你,中国!中国加油,武汉加油!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GIt的基本知识相关的知识,希望对你有一定的参考价值。

以前已经把git 看过一遍了,由于好久没有用它 ,现在已经忘了。现在呢,要用它进行同步代码,所以呢,我打算记一记,再复习复习。

参考文件:https://git-scm.com/

 

第一章: 了解GIt

Git 的特点:

1. 直接记录快照,而非差异比较;

2. Git 的基本所有的操作都是在本地进行的;因为它本地有数据库的镜像;

3. git的完整性,Git 中所有数据在存储前都计算校验和,然后以校验和来引用。这意味着不可能在 Git 不知情时更改任何文件内容或目录内容。Git 用以计算校验和的机制叫做 SHA-1 散列(hash,哈希)。实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。

 

记住 Git 的三种状态:

已提交(committed)、已修改(modified)和已暂存(staged)。   已提交表示数据已经安全的保存在本地数据库中。已修改表示修改了文件,但还没保存到数据库中。已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

由此引入 Git 项目的三个工作区域的概念:Git 仓库、工作目录以及暂存区域。  

Git 仓库目录是 Git 用来保存项目的元数据和对象数据库的地方。这是 Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据。

工作目录是对项目的某个版本独立提取出来的内容。这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。

暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。有时候也被称作“索引”,不过一般说法还是叫暂存区域。

所以,基本的Git工作的流程如下:

  1. 在工作目录中修改文件。

  2. 暂存文件,将文件的快照放入暂存区域。

  3. 提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。

 

git 的安装与配置:

1. 我的电脑为debian系统的,所以呢,最简单的方法就是:sudo apt-get install git. 其它系统详细参考:https://git-scm.com/download/linux

2. 安装完成以后,现在来配置一下我们的Git 工作环境。

它的配置可以通过命令 git config 工具来进行配置,也可以直接修改配置文件。反正通过命令来配置也是修改配置文件的。

配置分为三个等级:

第一, /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置,如果使用带有 --system 选项的 git config 时,它会从此文件读写配置变量。

第二:~/.gitconfig~/.config/git/config 文件:只针对当前用户。可以传递 --global 选项让 Git 读写此文件。

第三:当前使用仓库的 Git 目录中的 config 文件(就是 .git/config):针对该仓库。

 

 

现在,我们通过 git config工具来配置一些基本的信息:

用户信息:

$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]

文本编辑器:

$ git config --global core.editor emacs

 

通过 git config –l 可以列出你已经配置完的信息;通过 git config 可以列出 git config的相关选项来。

3. git 的帮助: git help 可以查看一些详细的操作等。

 

第二:基本的操作:

获取 Git 仓库:

两个方法:

1,把本地的文件导入到git库中; 用 git init ,就OK了。 这时,会出现一下.git的目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件。

2. 从服务器克隆出一个现有的git库; 命令为:

git url 
或 git url 目录名   //用于自定义本地的目录名字,如果省略的话,就会用服务器上的目录名;

git支持的传输协议:https:// 协议, git:// 协议,还可以用使用 SSH 传输协议,比如 [email protected]:path/to/repo.git

 

Git的提交至仓库:

以上是关于GIt的基本知识的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

使用 Git 来管理 Xcode 中的代码片段

如何管理在每个 git 版本中添加私有代码片段?

markdown Git代码片段

Git