Git命令

目录

创建Git版本库

假如在D盘创建一个testGit版本库。

  1. 打开Git终端
  2. 初始化指令,把当前目录变为gir可以管理里的仓库
git 复制代码
git init

.git这个目录是Git跟踪管理版本的,千万不要手动乱改里面的文件。.git里的内容如下:

Git配置信息Config

在git中,我们使用git config 命令用来配置git的配置文件,git配置级别主要有以下3类:

1、仓库级别 local 【优先级最高】(局部)

2、用户级别 global【优先级次之】(全局)

3、系统级别 system【优先级最低】(系统)

git 仓库级别对应的配置文件是当前仓库下的.git/config

git 用户级别对应的配置文件是用户宿主目录下的~/.m2/.gitconfig

git系统级别对应的配置文件是git安装目录下的 /etc/gitconfig
问题1: 你在公司中,同时负责三个项目,那么你配置哪个级别是最优的?

  • 配置用户级别是最优的。

问题2: 你和另一个同事,轮流使用同一台电脑,你负责两个项目,她负责两个项目,那么你配置哪个级别是最优的?

  • 配置仓库级别是最优的。

查看配置信息的命令

  1. 查看仓库级别的配置信息的命令

    git 复制代码
    git config --local -l
    或
    cat ./git/config
  2. 查看用户级别的配置信息的命令

    git 复制代码
    git config --global -l

    首次使用git时,会发现本地电脑上没有~/.gitconfig文件,需要自己手动创建。

    git 复制代码
    user.name=修改为你自己的名字
    user.email=修改为你自己的有些
    filter.lfs.process=git-lfs filter-process
    filter.lfs.required=true
    filter.lfs.clean=git-lfs clean -- %f
    filter.lfs.smudge=git-lfs smudge -- %f
    credential.https://gitee.com.provider=generic
    credential.https://修改为你自己或公司的网址.provider=generic
  3. 查看系统级别的配置信息的命令

    git 复制代码
    git config --system -l

修改配置信息的命令

演示修改用户名和邮箱:

git 复制代码
git config --global user.name "zhangsan"
git config --global user.email "zhangsan@126.com"

注意:不要手动修改 每个级别的配置文件,要用命令。

Git命令

1. 添加文件

  1. 创建文件
    创建文件test.txt,此时文件在工作区(WorkSpace)

    git 复制代码
    vim test.txt
  2. . 查看文件内容

    git 复制代码
    cat test.txt
  3. . 追踪文件情况

    git 复制代码
    git status
  4. 使用git命令将文件从工作区添加到暂存区中

    git 复制代码
    git add test.txt


    我们发现添加到暂存区的时候会有警告出现。不过没关系,是换行符的警告。

  5. 可同时提交多个文件
    在创建test1.txt、test2.txt、test3.txt、test4.txt
    先同时提交两个文件

    git 复制代码
    git add test1.txt test2.txt
  6. 可全部添加

    git 复制代码
    git add .

2. 撤回/回退文件

这是从暂存区撤回到工作区

  • 方式一

    git 复制代码
    git rm --cached test4.txt
  • 方式二:

    git 复制代码
    git restore --staged test5.txt
  • 方式三:

    git 复制代码
    git checkout -- test4.txt

    注意:-- 与文件中间有空格。
    在最新版本的git中,这个命令没有作用。

3. 提交文件

将暂存区的文件提交到主分支

git 复制代码
git commit -m "first commit finished"
  • 双引号中是注释,表示这次提交了什么
  • 双引号中可以写中文
  • 注释是必须要写的。
  • 注意:要设置了配置文件中的name和email之后,才能提交。

4. 修改文件

有三种情况:

  • 情况一:在工作区修改

    git 复制代码
    git status
    vim test5.txt
  • 情况二:在暂存区修改

    git 复制代码
    git add test5.txt
    vim test5.txt
    git status

    此时会发现暂存区(旧版本)和工作区(新版本)都有一个test5.txt的文件。

    git 复制代码
    git restore test5.txt
    git status

    退到到修改前的版本

  • 情况三:将暂存区文件回退到工作区

    git 复制代码
    git rm --cached test5.txt
    git status
    vim test5.txt

5. 日志查看

git 复制代码
git log

若嫌信息太多,可以使用命令显示简化信息

git 复制代码
git log --pretty=oneline

6. 版本回退

想把当前的版本回退到上一个版本,可以使用版本回退命令。

  • 第一种:git reset --hard HEAD^:那么如果要回退到上上个版本只需把HEAD^ 改成 HEAD^^ 以此类推
  • 第二种:git reset --hard HEAD~100:之间回退到100版本前
  • 第三种:git reset --hard sha的前四位
git 复制代码
git reset --hard HEAD^

7. 撤销回退

使用版本会退后,有向回到最新版本,可以使用撤销回退的命令。

  • 通过命令获得版本号:

    git 复制代码
    git reflog
  • 使用命令回到到第三次提交

    git 复制代码
    git reset --hard 67fb

8. 删除文件

git 复制代码
git rm test5.txt
git status
git commit -m "删除test5.txt"
  • 注意:使用命令删除文件是不会回收到电脑卓中的垃圾回收站的。
  • 如果使用rm删除不在暂存区,需要git add才会进入暂存区。
  • 如果进入暂存区可以退回工作区,使用下面命令 git reset HEAD test.txt
相关推荐
传感器与混合集成电路3 小时前
精准钻进,高温无阻:随钻测井定向探管如何赋能极限能源勘探
大数据·人工智能·能源
TDengine (老段)3 小时前
TDengine 地理函数 ST_GeomFromText 用户手册
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
神算大模型APi--天枢6463 小时前
智能协同与垂直深耕:聚合模型API算力平台重构软件开发生态
大数据·人工智能·科技·重构·架构·gpu算力
Elastic 中国社区官方博客4 小时前
使用 LangGraph.js 和 Elasticsearch 构建一个金融 AI 搜索工作流
大数据·人工智能·elasticsearch·搜索引擎·ai·金融·全文检索
W如Q扬4 小时前
filebeat使用dissect替换默认的的timestamp以及多行处理
elasticsearch·efk·filebeat
W如Q扬4 小时前
filebeat日志时区问题处理
elasticsearch·efk·filebeat
Mxsoft6194 小时前
Flink CEP预警连锁故障,提前30分钟救场!
大数据·flink
武子康4 小时前
大数据-176 Elasticsearch Filter DSL 全面实战:过滤查询、排序分页、高亮与批量操作
大数据·后端·elasticsearch
geneculture4 小时前
融合全部讨论精华的融智学认知与实践总览图:掌握在复杂世界中锚定自我、有效行动、并参与塑造近未来的元能力
大数据·人工智能·数据挖掘·信息科学·融智学的重要应用·信智序位·全球软件定位系统