Git的高层命令

138 阅读3分钟

这是我参与2022首次更文挑战的第15天,活动详情查看:2022首次更文挑战

前言

今天我们继续复习一下Git操作,我们这章讲的是Git的高层命令,也是我们项目开发和维护经常需要用到的,大家跟我一起来看看吧!

Git高层命令

1、git add .

  1. 会将工作目录的修改,保存成git对象 先到版本库,再到暂存区,而不是直接到暂存区
  2. 在工作目录修改几个文件,就会生成几个git对象(一个文件对应一个git文件)
  3. 同一个文件,每次修改再add的时候都会生成一个新的git对象,是增量而不是覆盖
  4. 所以说git是绝对安全的,就算我只存到暂存区没有提交 git也会给我保存
  5. 只有后面提交的时候,才会根据暂存区内容给我生成树对象并存入版本区,然后加上我们的提交信息,才生成提交对象存入版本库
#相当于以下两个命令集合
git hash-object -w 文件名(修改了多少个工作目录中的文件,就要被执行几次)
git update-index ...

2、git commit -m "注释内容"

将暂存区提交到版本库

git write-tree
git commit-tree

跳过暂存区存入(之前add过的,直接提交)

git commit -a -m ""

3、git init

初始化仓库 初始化后,在当前目录下出现一个名为.git的文件夹

4、git status

查看文件的状态

5、git diff

  1. 当前做的那些更新没有暂存?

    命令:git diff(不加参数直接输入git diff)

  2. 有哪些更新已经暂存起来准备好了下次提交

    命令:git diff --cached或者git diff --staged(1.6.1以上版本)

6、git log

  1. git log(不带参数)

    空格键往下翻页 b向上翻页 q退出日志查阅

  2. git log --oneline

    将日志信息拍成一行显示

  3. git reflog

    所有的日志信息

  4. git log --oneline --decorate --graph --all

    查看所有的分支信息命令

7、git rm

删除工作目录对应的文件,再将修改添加到暂存区(如同删除后给你用了 git add 文件名)

#删除命令
git rm 文件名 
#直接提交修改,因为rm命令帮你提交到暂存区了
git commit -m "xxx"

8、git mv

将工作目录中的文件进行重命名,再将修改添加到暂存区

git mv 原文件名  新文件名

五、配别名

Git并不会在你输入部分命令时自动推断出你想要的命令,如果不想每次都输入完整的Git命令,可以通过git config 文件来轻松为每一个命令设置一个别名

此处运行后将会写入你的配置文件,可以进入配置文件直接删除

git config --global alias.自定义命令 " `git` 命令后面的指令 "
#如配置查看分支信息 "git log --oneline --decorate --graph --all"
git config --global alias.logbranch "log --oneline --decorate --graph --all"
#配置切换分支
git config --global alias.co checkout
#使用方式
git logbranch

总结:这一章主要讲git的的高层命令,这也是大家经常git操作使用的命令,下一章我们讲一下git的分支部分的知识点,还是那句话,一步步来,加油!