当前位置: 首页 > news >正文

Git基本操作(1)

Git基本操作(1)

  • 初始化git本地仓库
  • git本地仓库配置
    • git config user.name 和git config user.email
    • git config --unset user.name和git config --unset user.email
    • git config --global
  • 认识工作区,暂存区,版本库
    • 更深层次理解
  • git add + 文件名
  • git commit -m "描述信息"
  • git log 查看日志信息

前面我们配置了git还有远程仓库,今天我们来了解一下git的基本操作。

初始化git本地仓库

首先,我们在装好git之后,我们就要初始化一个git仓库,我们可以用命令行git init来初始化一个git本地仓库,首先我们创建一个文件夹:
在这里插入图片描述
我们进入到gitcode文件夹,使用git init命令:
在这里插入图片描述
我们查看隐藏文件,发现如果出现 .git,就表明我们成功创建了一个git的本地仓库。
我们看看这个.git下有哪些文件:
在这里插入图片描述
这下面的文件都是非常重要的,不要轻易修改。

git本地仓库配置

git config user.name 和git config user.email

我们有了本地仓库之后,我们可以对我们的这个本地仓库进行一个基础的配置——配置邮箱和用户名:
我们可以先用git config -l查看我们当前的配置:
在这里插入图片描述
我们可以为当前的本地仓库设置专属的用户名和邮箱,使用git config user.name “Your name”
git config user.email “Your email” :
在这里插入图片描述
我们发现下面两行就是这个仓库的专属的邮箱和用户。

git config --unset user.name和git config --unset user.email

此时如果我们想取消这个邮箱和用户,我们可以使用git config --unset user.namegit config --unset user.email解除当前的git仓库的用户和邮箱:
在这里插入图片描述

git config --global

如果我们一台机器上的所有的本地仓库都会往一个用户和邮箱去提交,我们可以把这个设置成全局的,只需要带上–global:

git config [--global] user.name "Your Name"
git config [--global] user.email "email@example.com"

取消设置也是一样的:

git config [--global] --unset user.name
git config [--global] --unset user.email

认识工作区,暂存区,版本库

现在我们在gitcode这个文件夹下创建一个文件:
在这里插入图片描述
我在gitcode下创建了一个My_file的文件,好了,现在的问题是这是候git可以管理这个文件吗?答案是不行。

其实,我们这个gitcode下的这个隐藏的.git文件就是我们的版本库,什么叫版本库呢?其实很简单,就是我们可以通过git对我们文件的修改进行跟踪,而跟踪的结果会由这个.git的隐藏文件进行管理。

在这里插入图片描述

好了现在我们了解了版本库,我们还得清楚一个概念——工作区
什么叫工作区呢?说的直白一点,就是一个包含.git文件的文件夹,比如我的gitcode这个文件夹包含了.git,这个时候,我的gitcode就是一个工作区,我在gitcode这个工作区创建了My_file文件。
在这里插入图片描述
如果我们想让git管理My_file文件,我们就要让My_file文件进入到版本库中,但是请注意,我们不能直接在.git文件夹下创建文件,这是绝对不允许的。那我们应该怎么办呢?我们先来看一张图:
在这里插入图片描述
通过这张图,我们大概知道,首先我们要进行add操作让文件进入stage(暂存区index)然后再用commit操作把文件交到master分支,才算把文件交到了版本库中。这时候git才能管理这个文件。

更深层次理解

其实我们除了上面的三个板块,我们还有一个板块叫对象库
在这里插入图片描述
我们工作区的任何改动会交到这个对象库中,然后暂存区储存的不是真实的对象,而是指针,指针会指向对象库中对象:
在这里插入图片描述
然后commit操作会把暂存区中东西接到master分支中(通过HEAD指针),同时master上也有指向对象库中对象的指针:
在这里插入图片描述
这样git可以对我们的文件进行管理了。
我们可以把.git文件的结构看看,对应我们所说的部分。
在这里插入图片描述
我们好像没有看到暂存区的部分,那是因为我们这个git仓库是新建的,还没有进行任何的add,commit操作,暂时还不会显示出来,我们可以把我们的My_file文件上交一下:
在这里插入图片描述
这下我们看到了暂存区了。

git add + 文件名

之前铺垫这么多,这下可以讲一下git的操作了,我们先来我们最熟悉的一个git add +文件名比如我想把My_file上交:
在这里插入图片描述
后面也可以接多个文件名:
在这里插入图片描述
也可以git add .,这里这个点的意思就是把当前文件夹下所有修改过的文件都交到暂存区中:
在这里插入图片描述

git commit -m “描述信息”

我们在add之后,就要把文件交到master上,这步的操作是git commit -m “描述信息”,这里的-m + “描述信息”,不能省,这里我们-m就是日志信息,对于我们进行版本控制非常重要。
在这里插入图片描述

git log 查看日志信息

我们可以用git log查看日志信息:
在这里插入图片描述
我们看到commit的后面有一串字符串,这个是上交时的关键信息,也是进行版本控制的重要信息。

如果嫌弃这么多的信息过于累赘,我们可以带上选项 –pretty=oneline
在这里插入图片描述

http://www.lryc.cn/news/305314.html

相关文章:

  • k8s-helm部署应用 19
  • OGG-00918 映射中缺少键列 id.
  • QT_day4
  • Spring Boot应用集成Actuator组件以后怎么自定义端点暴露信息
  • C# CAD备忘录
  • 【数据结构】排序(2)
  • HarmonyOS开发行业前景就业分析与实例解析
  • Elasticsearch:创建自定义 ES Rally tracks 的分步指南
  • 5分钟JavaScript快速入门
  • 如何使用IP代理解决亚马逊账号IP关联问题?
  • opencv之cvScalar
  • 通过 GithubActions 实现自动化部署 Hexo
  • 如何快速导出vercel project中的环境变量
  • Java-8函数式编程设计-Functional-Interface
  • Linux TCP 参数设置
  • Dubbo之消费端服务RPC调用
  • 报表控件Stimulsoft 新版本2024.1中,功能区工具栏新功能
  • 零样本带解释性的医学大模型
  • 英文输入法(C 语言)
  • 万众一心 · 喜赢未来,2023宇凡微年会暨阳朔之旅
  • 【Spring】 AOP面向切面编程
  • R语言入门笔记2.6
  • PS人像处理磨皮插件
  • 类型转换(C++)
  • 2.23数据结构
  • c++笔记理解
  • 二进制部署k8s集群之cni网络插件
  • 二维矩阵子集的最大值
  • 瑞_23种设计模式_装饰者模式
  • 使用Python制作进度条有多少种方法?看这一篇文章就够了!