Git 工具的「安装」及「基础命令使用」

发布于:2025-09-07 ⋅ 阅读:(21) ⋅ 点赞:(0)

- 第 119 篇 -
Date: 2025 - 09 - 05
Author: 郑龙浩(仟墨)

Git 工具的「安装」及「基础命令使用」

学习课程:https://www.bilibili.com/video/BV1MU4y1Y7h5?spm_id_from=333.788.player.switch&vd_source=2683707f584c21c57616cc6ce8454e2b&p=5

1 基本Linux命令

  • ls / ll 查看当前目录 ls 不能看隐藏文件,ll 可以看隐藏文件
  • cat 查看文件内容
  • touch 创建文件
  • 编辑器 可以用记事本,vi编辑器等

2 Git 环境配置

下载地址:https://git-scm.com/downloads

在官网下载完之后,双击.exe文件,直接默认安装即可

当安装完Git后,首先要做的事情就是设置用户名和Email地址,因为每次Git提交都会使用该用户信息(很重要的)

3 Git GUI Here、Git Bash Here

在桌面或者其他目录下右击,可以看到两个菜单:

  • Git GUI Here Git提供的图形界面工具
  • Git Bash Here Git提供的命令行工具

4 设置邮箱、用户名

git是版本控制,需要记录哪个人做了什么事情,怎么确定呢,是通过邮箱来确定是哪个人的

  1. 在桌面右键,选择Open Git Bash Here(有些显示Git Bash Here),会有一个黑色弹窗,相当于内置了一个小的Linux

  2. 设置用户信息

    git config --global user.name "郑龙浩"

    git config --global user.email "123456.@gmail.com"

    (查看邮箱的方法,输入指令的时候,将上方指令的引号以及引号中的内容去掉即可)

5 解决Git Bash乱码的问题

  1. 打开GitBash,执行命令:git config --global core.quotepath false

  2. 在要修改的文件下加入两行命令

    export LANG="zh_CN.utf-8"
    export LANG="zh_CN.utf-8"
    

6 获取本地仓库

.git存在的目录就是仓库

在当前目录中,除了.git,其他文件夹/文件夹都叫做工作目录

  1. 在计算机中的一个某文件夹内创建一个空目录(空文件夹)

    右键,创建文件夹即可

  2. 然后进入这个新的文件夹(目录),右击空白处,选择Open Git Bash Here,打开GitBash窗口

  3. 初始化当前目录为一个git仓库

    执行命令git init,输入回车,在当前目录中会多出一个.git文件夹(隐藏文件)

7 工作区、暂存区、仓库

  1. 无论是刚创建(未跟踪)还是已修改(未暂存)的文件,即「工作区」的文件,都需要执行一个git add指令将该类文件放到「暂存区」,执行git add命令

只有放在暂存区的文件才能提交到仓库

  1. 想要将**「暂存区」的文件放到「仓库」**,就得执行gti commit命令
  • 工作区:

    「工作区」文件放到「暂存区」用 git add 指令

    • 未跟踪文件:直接在仓库目录中创建了个文件,但是git并不知道该文件的存在,也不能控制该文件

    • 未暂存文件:修改了已经存在的文件,但是并未告诉git我修改了

  • 暂存区:提交到仓库之前的缓冲区

    「暂存区」文件放到「仓库」,用 git commit 指令

    • 已暂存文件:就是将「未跟踪文件」或者「未暂存文件」告诉git,让git跟踪这类文件
  • 仓库:将缓存区的文件提交到仓库

8 新建/修改文件提交到仓库的过程

流程图如下:

graph LR
    A[【工作区】<br/>修改/新建文件] -->|git add| B[【暂存区】<br/>已暂存文件]
    B -->|git commit| C[【仓库】<br/>]
    C --> C1[commit 01]
    C --> C2[commit 02]
    C --> C3[commit 03]
  1. 查看文件状态(看是在「暂存区」、「工作区」还是「仓库」)

    拓:创建文件指令touch file01.txt,相当于在文件管理器中,在当前目录右击,新建文件file01.txt

    git status
    
    • 如果出现红色字体,表示文件在「工作区」,如下:

      On branch main
      Changes not staged for commit:
        (use "git add <file>..." to update what will be committed)
        (use "git restore <file>..." to discard changes in working directory)
              modified:   file01.txt --> 红色字体
      
      no changes added to commit (use "git add" and/or "git commit -a")
      
    • 如果出现绿色字体,表示问价在「暂存区」

      On branch main
      Changes to be committed:
        (use "git restore --staged <file>..." to unstage)
              modified:   file01.txt --> 绿色字体
      
  2. 将「工作区」的文件(新建/修改文件)加入「暂存区」

git add . --> 将当前目录中的所有文件都加到暂存区
git add "file01.txt" --> 将当前目录中的文件file01.txt加到「暂存区」
  1. 将「暂存区」的文件提交到「仓库」

    为什么要加注释:为了方便查看每次提交,提交的是什么内容

git commit -m "注释内容" --> 将暂存区的所有文件提交到仓库,并加上对应注释

9 查看提交日志

以下指令太长可以设置别名方便一些 ,设置别名的方法我目前还不会,后期再学吧

输入git log 的时候可以查看所有的提交记录

输入git log --abbrev-commit 的时候,可以将**「提交记录唯一标识」(commitID)**显示的更加简短,一般只会显示前面几个,如:

07752f935c6f700ce926e72a2bbb4c7c7b7ecf89变成:07752f9

在后面版本退回的时候,一般使用这个简短的也可以

git log 					--> 查看提交记录
git log --all 				--> 显示所有的分支
git log --prettty=online 	--> 将提交信息显示为一行
git log --abbrev-commit 	--> 使得输出的commitID更简短
git log --graph 			--> 以图的形式显示
git log --dacorate 			--> mac默认是2015版,需要手动输入,win中的默认执行此功能,不用写
git long --all --prettty=online --abbrev-commit --graph --> 包含上面的一切指令的功能 	

执行完指令以后,从上往下,是最新提交–>最后提交

10 版本回退

主要功能就是:将版本切换

git reset --hard commitID
  1. --hard 可以换成其他的参数,目前只记录这一个就行了,学其他的容易记混

  2. commitID 这里并不是指的输入这个单词,而是指的提交记录唯一标识,如下:

    最上面是最新提交的,最下面是最后提交的,不要弄反了,我刚开始弄反了

    正常显示,指令:git log
    查看所有提交记录

    简短显示 ,指令:git log --all --abbrev-commit --graph****
    查看提交记录(将显示变简洁)

  3. 将「comitID」(简写的就可以)复制下来,粘贴到git reset --hard后边,可以回溯至以前的版本,如下:回溯到第二次提交的版本

    如何复制,选中某个区域,按「Enter」,即可复制,鼠标右击即可粘贴

    在这里插入图片描述

    执行完以上的命令以后,文件内容会变成第二次提交的那本

    比如第三次提交的文件内容是修改文件11,第二次文件是修改文件,如下:

    提三次提交 –> 执行命令前的内容

    在这里插入图片描述

    回溯到第二次提交 -> 内容改变
    在这里插入图片描述

如果前面clear了,使用git log命令是无法找到每次提交的记录的,那么还能找到原来的提交记录标识,并未还原吗?

是可以的,只是无法直接显示每次的提交记录,但是可以看到我们每次的操作过程

可以用以下的命令:

git reflog

在这里插入图片描述

当然,我只是看教程中出现了这种情况,我自己clear清空以后,再执行git log依然可以看到所有的提交记录,不知道是不是我版本和老师版本不同的问题

查看已经删除记录

git relog不只是可以看到操作过程,开可以看到已经删除的记录


网站公告

今日签到

点亮在社区的每一天
去签到