官网地址:https://git-scm.com/


一、安装选项解释

1. 安装路径选择一个没有中文空格的路径

Git_入门

 2. 


二、Git介绍

1. Git简史

Git_入门

 2. Git结构 

Git_入门

3. Git和代码托管中心

代码托管中心的任务:维护远程库 

 局域网环境下

  • GitLab 服务器

 外网环境下 

  • GitHub
  • 码云

4. 本地库和远程库

Git_入门

Git_入门

 


三、Git 命令行操作

 1. 本地库初始化 

命令:git init

Git_入门

 注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改。

Git_入门

2.  设置签名 

形式

作用:区分不同开发人员的身份

辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系(雷锋和雷峰塔的关系)

命令 

1) 项目级别/仓库级别:仅在当前本地库范围内有效

信息保存位置:./.git/config 文件
Git_入门

2) 系统用户级别:登录当前操作系统的用户范围 

信息保存位置:~/.gitconfig 文件

Git_入门

3) 级别优先级

就近原则:

  • 项目级别优先于系统用户级别,二者都有时采用项目级别的签名
  • 如果只有系统用户级别的签名,就以系统用户级别的签名为准
  • 二者都没有不允许(Git 无法确定这是那个开发人员,无法识别身份,报错)。

注:一般我们都是设置系统级别,不然每次创建一个仓库我们都得去设置一次

3. 基本操作

3.1 状态查看

git status 查看工作区、暂存区状态

首次初始化使用 git status 这个时候我们什么都还没有提交过,工作空间也没有什么是可以提交的 

Git_入门

创建一个文件,输入数据

 Git_入门

3.2 添加

git add [filename] 将工作区的“新建/修改”添加到暂存区

3.3 提交

git commit -m "commitmessage" [filename] 将暂存区的内容提交到本地库

当我们去修改一个已经提交到版本库里面的文件的时候,这个时候我们可以在 git add 然后 git commit,我们也可以使用 git commit -a 一步到位 

  • 已经进行过版本追踪的文件,可以不 git add,直接 git commit 但是这样就不可以撤销
  • 新加的文件需要先 git add  在 git commit

Git_入门

如果没有 -m 选择,这个时候回弹出vim,让我们输入提交的描述信息 

Git_入门

四、 前进后退 

4.1 查看历史记录

git log

 Git_入门

注:HEAD 其实就是一个指针,它执行当前的版本,我们去前进后退就是移动指针。Author 和 Date 正是我们前面配置的签名,Date 是我们提交的实际,最后是提交信息。

多屏显示控制方式:

  • 空格向下翻页
  • b 向上翻页
  • q 退出

git log --pretty=oneline

 Git_入门

git log --onelint

只能看到当前版本及以前的版本,就是不能预知未来 (你回到了过去,就只能看到过去和过去以前发送的事情了)

 Git_入门

git reflog

Git_入门

[email protected]{移动到当前版本需要多少步}

4.2 前进后退 

本质指针(名字HEAD 取名字是为了方便我们去引用)的移动

Git_入门

1. 基于索引值操作[推荐]

2. 使用^符号:只能后退

  • git reset --hard HEAD^
  • 注:一个^表示后退一步,n 个^(HEAD^^^)表示后退 n 步

3. 使用~符号:只能后退

  • git reset --hard HEAD~n
  • 注:表示后退 n 步

 演示:重新新建了一个本地仓库,并且提交了四次,每次增加一行单词

第一种方式:不用考虑前进后退

Git_入门

回退到第三次提交的时候 

Git_入门

后面的两种方式只能回退版本,往最初的版本去

reset 命令的三个参数对比 

https://git-scm.com/docs/git-reset

1. --soft 参数

  • 仅仅在本地库移动 HEAD 指针

Git_入门

2. --mixed 参数

Git_入门

全都回退,就工作区没有回退,所以此时 git status 显示的是红色状态 

  • 在本地库移动 HEAD 指针
  • 重置暂存区

Git_入门

3. --hard 参数

  • 在本地库移动 HEAD 指针
  • 重置暂存区
  • 重置工作区

Git_入门

 小提示:

Git_入门

五、删除文件并找回 

前提:删除前,文件存在时的状态提交到了本地库

操作:git reset --hard[指针位置]

  • 删除操作已经提交到本地库:指针位置指向历史记录
  • 删除操作尚未提交到本地库:指针位置使用 HEAD(刷新当前版本)
     

六、比较文件差异

1. git diff[文件名]

  • 将工作区中的文件和暂存区进行比较

2. git diff[本地库中历史版本][文件名]

  • 将工作区中的文件和本地库历史记录比较

3. 不带文件名比较多个文件
 


 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-01-19
  • 2021-08-05
  • 2021-07-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-17
相关资源
相似解决方案