Git——内容大纲

2019-04-09  本文已影响0人  四喜汤圆

一、作用

二、是什么

世界上最先进的分布式版本控制系统,基于 C 语言开发。

三、使用

1. 相关概念

(1)集中式 VS 分布式
日常生活场景中需要版本控制,而 Git 是一种版本控制工具。

版本控制工具分为分布式(以 Git 为代表)和集中式(以 SVN 为代表),下面从以下几个方面进行比较。

a) 版本库

Q:那么如何协作呢?
A:比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,上面有一个中央仓库,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

b) 网络依赖

c)安全性

(2)工作区、暂存区和版本库
工作区(working tree 或 working directory)、暂存区(stage 或 index)、本地仓库、远程仓库。

四者关系 廖雪峰老师的示意图

2. 常用操作

(1) 创建仓库

一个 git 仓库中有.git目录,这个目录是 Git 来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。

① 把本地文件夹初始化为仓库

$ git init
Initialized empty Git repository in F:/learngit/.git/

② 把远程仓库 clone 到本地

$ git clone git@github.com:SiXiWanZi/SSHTest.git

(2)向 GitHub 提交代码
Git——向GitHub提交代码

(3) Git 中的后悔药
Git——Git中的后悔药

(4)分支管理
Git——Git分支管理

3. 常用命令

(1)git log
显示从近到远的提交历史。

使用git log --pretty=oneline将提交日志简化。

(2) git reflog
查看命令历史,可记录每一次命令。

(3)git diff

同一分支下:

$ git diff

现有两个文件 README.md 和 LICENSE.md,它们都已被添加到了暂存区。分别修改两个两个文件。然后执行指令$ git diff,结果如下,罗列了所有文件的比较情况。

① 工作区和本地仓库最新版本

$ git diff HEAD

② 工作区和本地仓库指定版本

$ git diff <commitId>

① 暂存区和本地仓库最新版本

$ git diff --cached

② 暂存区和本地仓库指定版本

$ git diff --cached <commitId>
$ git diff <commitId1> <commitId2>

不同分支下:

$ git diff <branch1> <branch2>

(4)配置用户名邮箱
Git 根据用户名和邮箱提交记录,每进行一次 commit 都会产生一条 log,这条 log 标记了提交人的姓名与邮箱,以便其他人方便地查看与联系提交人。所以提交代码之前要设置好自己的姓名和邮箱
git config --global user.name // 配置全局的用户名
git config --global user.email// 配置全局的邮箱
git config --list // 查看已有的配置信息

(5)关于界面的配置
git config --global color.ui true
git config --global core.quotepath false// 显示中文文件名

参考文献

git 官方文档
git flow的使用
廖雪峰的 Git 教程
Git diff 常见用法
图解 Git

上一篇 下一篇

猜你喜欢

热点阅读