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.mzph.cn/news/700637.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做qt界面样式,写代码,好用的搜索工具,我推荐ai伙伴

ai伙伴 这里有最全的官方qss样式,但还是有点不全 有些qt样式要配合csdn来搜

微服务Day6

文章目录 DSL查询文档RestClient查询文档快速入门 旅游案例 DSL查询文档 RestClient查询文档 快速入门 Testvoid testMatchAll() throws IOException {//1.准备RequestSearchRequest request new SearchRequest("hotel");//2.准备DSLrequest.source().query(QueryB…

海外媒体推广通过5个发稿平台开拓国际市场-华媒舍

随着全球化的进程,国际市场对于企业的吸引力日益增加。进入国际市场并获得成功并非易事。海外媒体推广发稿平台成为了一种重要的营销手段,能够帮助企业在国际市场中建立品牌形象、传递信息和吸引目标受众。本文介绍了五个海外媒体推广发稿平台&#xff0…

Linux:gcc的基本知识

gcc 是一个将C语言文件变成可执行文件的工具。 在Linux中,如果需要将一个C语言文件变得可以执行,那么除了这个文件本身的内容是C语言编写的内容外,还需要gcc这个编译工具进行编译才行。 gcc 使用的格式方法:gcc 要编译的文件 //在该代码下…

Flink checkpoint操作流程详解与报错调试方法汇总,增量checkpoint原理及版本更新变化,作业恢复和扩缩容原理与优化

Flink checkpoint操作流程详解与报错调试方法汇总,增量checkpoint原理及版本更新变化,作业恢复和扩缩容原理与优化 flink checkpint出错类型flink 重启策略Checkpint 流程简介增量Checkpoint实现原理MemoryStateBackend 原理FsStateBackend原理RocksDBSt…

信息系统项目管理师(高项)—学习笔记

第一章信息化发展 1.1 信息与信息化 1.1.1 信息 信息是物质、能量及其属性的标示的集合,是确定性的增加。 它以物质介质为载体,在传递和反映世界各种事物存在方式、运动状态等的表征。 信息不是物质,也不是能力,它以一种普遍…

c++ qt五子棋联网对战游戏

C qt 五子棋联网对战游戏运行环境 Qt 6.6.0 (MSVC 2019 64-bit) 代码文件编码格式 ANSI txt文件编码格式 ANSI 测试用例 服务端端口被占用 通过客户端端口被占用 通过客户端连接服务端 服务端中途断开 通过客户端连接服务端 客户端中途断开 通过服务端没有启动 客户端启动…

svn客户端下载、安装、使用

下载、使用 打开360软件管家,选怎宝库,搜索svn,点击安装 可以修改安装路径 使用 在桌面右键弹出菜单,点击 输入地址,点击ok 输入用户名、密码 ,等待检出完成

【Linux】C语言实现超级简单进度条!你不会还不知道吧?

目录 1. 基础准备🎍 1.1 \r&&\n 1.2 缓冲区 2. 进度条1.0🥀 2.1 Process.h 2.2 Process.c 2.3 Main.c 2.4 Makefile 3.进度条 2.0🪺 3.1 Process.h 3.2 Process.c 3.3 Main.c 1. 基础准备🎍 1.1 \r&&…

WPF真入门教程29--MVVM常用框架之MvvmLight

1、MVVM模式回顾 关于mvvm模式的基础知识,请看这2个文章: WPF真入门教程23--MVVM简单介绍 WPF真入门教程24--MVVM模式Command命令 做过VUE开发或微信小程序开发的伙伴,就知道MVVM模式,核心就是数据驱动控件,全栈开…

基于SpringBoot的家教管理系统

基于SpringBootVue的家教管理系统的设计与实现~ 开发语言:Java数据库:MySQL技术:SpringBootMyBatis工具:IDEA/Ecilpse、Navicat、Maven 系统展示 前台主页 家教 个人中心 管理员界面 摘要 本文介绍了基于SpringBoot框架开发的家…

如何正确设置CrossOver之偏好设置 crossover软件使用 crossover设定 crossover软件安装

CrossOver的核心是Wine,Wine是一个能在多种POSIX-compliant操作系统(如:Linux、Mac OS等)上运行Windows应用的兼容层。Wine不是Windows的模拟工具,它是把Windows API 调用翻译成为动态的 POSIX 调用,实现Li…

03 基本指令 1

linux的命令选项都可以同时叠加多个 ls 语法:ls [选项][目录或文件] 功能:对于目录,命令列出该目录下所有子目录与文件。对于文件,列出文件名以及其他信息 常用选项: -a 列出目录下所有文件,包括.开头的…

电子元件分销商

Top 10 Active Electronic Parts Distributors List – 2022 / 2023 一家从众多制造商那里收购所有电子元件并销售给客户的公司被称为电子元件分销商。 A company that acquires all electronic components from numerous manufacturers and sells them to customers from a si…

2024/2/17 图论 最短路入门 dijkstra 1

目录 算法思路 Dijkstra求最短路 AcWing 849. Dijkstra求最短路 I - AcWing 850. Dijkstra求最短路 II - AcWing题库 最短路 最短路 - HDU 2544 - Virtual Judge (vjudge.net) 【模板】单源最短路径(弱化版) P3371 【模板】单源最短路径&#xf…

Stable Diffusion——文生图界面参数讲解与提示词使用技巧

Clip终止层数 什么是Clip CLIP(Contrastive Language-Image Pretraining)是由OpenAI于2021年开发的一种语言图像对比预训练模型。其独特之处在于,CLIP模型中的图像和文本嵌入共享相同的潜在特征空间,这使得模型能够直接在图像和文…

thinkphp5.1 phpexcel 批量导入导出

1.批量导入 public function importExcel(){$authority $this->getUserAuthority(order_input, batch_import);if ($authority[code] ! 0) {return json($authority);}$file request()->file(files);if(empty($file)){return printMsg(-1, "请上传文件");}/…

开发技术-Java 获取集合中元素下标并移动至指定位置

1. 说明 某些业务需要特定的元素在列表的最后或者指定位置展示。 2. 代码 import lombok.AllArgsConstructor; import lombok.Data;import java.util.*; import java.util.stream.Collectors; import java.util.stream.IntStream;Data AllArgsConstructor class Student {St…

CMNet:Contrastive Magnification Network for Micro-Expression Recognition 阅读笔记

AAAI 2023的一篇文章,东南大学几位老师的工作,用于做微表情识别中的运动增强工作, 以下是阅读时记录的笔记。 摘要: However,existing magnification strategies tend to use the features offacial images that include not onl…