新乡平原新区建设局网站/广州网站推广平台

新乡平原新区建设局网站,广州网站推广平台,python 做网站相关的库,电子商务网站建设基础步骤目录 git基本配置 认识工作区、暂存区、版本库 添加文件--情况一: 添加文件-情况二: 修改文件: 版本回退: git基本配置 1.初始化本地仓库,注意:一定要在一个目录下进行,一般都是新建一个文件夹,在文件…

目录

git基本配置

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

添加文件--情况一:

添加文件-情况二:

修改文件:

版本回退:

git基本配置

1.初始化本地仓库,注意:一定要在一个目录下进行,一般都是新建一个文件夹,在文件夹中进行下文操作
    指令:git init
2.初始化git的提交用户+邮箱
    2.1:配置用户名:git config user.name "gitee的用户名||github用户名" 
    注意!,如果是gitee,你的用户名是@后面的字符串,不包括@!
    2.2:配置邮箱:git config user.email "gitee/github绑定的邮箱地址"
3.查看当前路径下本地仓库的配置信息
    指令:git config -l
4.重置配置信息
    4.1:重置姓名:git config --unset user.name
    4.2:重置邮箱:git config --unset user.email
5.将当前机器上所有的用户都配置相同的用户和密码
    指令:git config --global user.name "gitee的用户名||github用户名"
    指令:git config --global user.email "gitee/github绑定的邮箱地址"
    注意:通过--global选项配置的账户信息是不能直接通过上述第4条说明中的指令重置的!!需要的指令如下:
    重置用户名:git config --global --unset user.name
    重置邮箱:git config --global --unset user.email

补充:1.gitee用户名位置:再次提醒:不要带上@!!!!!!!!!不要带上@!!!!!!!!!不要带上@!!!!!!!!!

2.查询giteer账号绑定的邮箱:在gitee主页(即上述图片界面),鼠标移动到右上角头像处,会有一个设置选项,点击,左边列表中有一个邮箱管理,点击后就能看到当前gitee账号绑定的邮箱

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

在本地仓库目录中,创建一个Readme文件,注意!不能直接在.git中创建!禁止一切手动修改.git的操作
版本库:-->.git文件
工作区:-->Readme所在目录下,但不包括.git文件
暂存区:-->版本库的stage模块,又称索引
add操作
将工作区被修改的部分提交到暂存区stage
commit操作
将暂存区stage中的内容提交到某个分支,默认master分支

简易流程图:

添加文件--情况一:

概念补充:.表示当前路径  ..表示上一级路径
1.先前面创建的Readme文件中写点东西,比如"hello git!"
2.提交方式将工作区的内容提交到暂存区2.1:提交指定工作区指定内容指令:git add 带路径的文件名(不带路径会默认为当前路径中的文件)可以连续带多个文件名,之间使用空格隔开:git add file1 file2...2.2:提交当前目录下所有的内容指令:git add .将暂存区内容提交到master分支2.3:命令后可以带选项,例如 -m 表示提交内容的同时携带对提交内容的说明信息,方便记忆:其实-m就是message的缩写指令:git commit -m "说明信息"注意:执行commit命令之前一定要先add过,并且使用commit指令一定要带上-m选项!!查看git的历史提交记录:指令:git log优雅的查看历史提交记录:指令:git log --pretty=oneline

添加文件-情况二:

1.先在工作区创建1个文件,test1.txt
依次执行以下指令:
    1.1:git add test1.txt
    1.2:Linux机器:touch test2.txt 
    windows机器:直接鼠标创建test2.txt
    1.3:git commit -m "test1.txt add"
 观察现象,显示有几个文件提交了?只有1个!就是test1.txt

修改文件:

Git追踪的是工作区的修改,而不是文件本身!

当我们对已经commit过的工作区文件进行修改时,比如,打开之前创建的Readme文件,新增一行数据,比如新增"hello mygit!"
查看git状态的指令:
    指令:git status
Linux上显示如下:

但是如果我想看到更详细的内容,比如:想知道是哪几行修改了,是增加还是删除?

指令:git diff 工作区被修改的文件名

Linux上显示如下,windows大差不差:

windows会更直观,不再赘述。

Readme文件被我们修改了,那么按照之前所说的,先add到暂存区,再commit到master分支
指令: 1.git add Readme
查一下:2.git status提示你,.git中的statge已被改变,需要commit到mater分支3.git commit -m "update Readme"
再查一下:4.git status
显示工作区和暂存区都无改动了
done

版本回退:

什么是版本回退?举几个栗子:

1.就像是你在烹饪一道复杂的菜肴时,突然发现自己加错了调料,然后决定“时光倒流”, 回到加调料前的那一刻,重新来过。

2.想象一下,你正在编写一个超级英雄的故事,你已经写到了“超级英雄打败了大反派,拯救了世界!”这一章。 但是,你突然意识到,在之前的某一章里,你给超级英雄加了一个奇怪的能力,比如“只剩一滴血也能重生”, 这个能力实在是太奇葩了,完全破坏了故事的整体氛围。 这时,Git版本回退就派上用场了。你可以使用Git的“时光机”(其实是一些命令), 回到那个添加奇怪能力的章节之前,然后就像那个能力从未存在过一样,继续你的创作

3.你正在准备毕业论文,第一版写完后交给老师,老师不满意,于是你哼哧哼哧的修改好了第二版论文, 此时你兴高采烈的又交给老师,老师说你的第二版论文格式有问题,内容也偏题了,回去重写,好吧, 于是你垂头丧气的又回去改了第三版论文交给老师,老师对着你说:"小明啊,你还是把第一版论文交给我吧, 你这几版还不如第一版呢!",你听到这话,心里非常庆幸,因为你将每一版论文都进行过备份,于是你找到 第一版备份交给了老师,成功通过,顺利毕业;

回归正题:

之前我们经常上面使用的Readme文件最开始只有一行内容"hello git!";add+commit之后,这就是第一版的Readme文件,之后我们又增加了一行内容"hello mygit!",add+commit之后就是第二版Readme文件

版本回退:指令:git reset [--soft] [--mixed] [--hard] [HARD]
注意:此处的[HARD]指的是git提交记录中用看标识提交ID的字符串哈希编码,如何查看HEAD?
前面提到过指令:git log --pretty=oneline
打印出来的左侧的字符串编码即是每次提交的HEAD

列个表格辅助理解:

首先,最后一版的Readme内容为"hello git!" 和"hello mygit"

reset命令不带选项默认为--mixed
版本回退实操:指令:1.查看一下git提交日志:git log --pretty=oneline2.根据HEAD选择要回退的版本

此处我选择回退至第一版,采用--hard选项
指令:git reset --hard d2c9915d4d2a5ca706c0e31de9df62a47796b944
回退之后,查一下git提交日志,显示如下:

此时Readme文件的内容被重置为原来的一行:"hello git!"

如果此时我们回退版本的时候,后悔了怎么办?
指令:
    git reset --hard dfc471a62a287d4cfc27d3968fe104d03980b859
上述HEAD是我们最开始查日志的时候显示的最新一次提交的版本的字符串哈希值,如果你反悔了,在记得回退前的
版本的HEAD时,就可以使用上述指令撤销本次回退
如果你记不到HEAD了,git也是有后悔药可以吃的!
指令:git reflog 
功能:查询更新前的git提交日志信息,其中有你日志更新前的所有版本提交的日志,其中有HEAD信息还有最左侧的部分信息
而部最左侧的信息也可以用来充当HEAD来进行撤销操作

撤销操作:

注意:这里说的撤销操作,只针对本地仓库,对于远端仓库不生效! 所以撤销操作的前提条件是:commit之后没进行push操作,这里的push操作暂不说明. 场景:当在某一个版本的基础上开发新的代码时,写了一坨之后,决定实在垃圾, 于是想撤销自己在当前版本之上写的所有代码时,就需要用到撤销操作。 撤销操作有三个场景,表格如下所示:

情况一:只更改了工作区的代码,其他区域未改变;

1.手动修改--代码量大的时候强烈不推荐!!
2.使用指令修改指令:git checkout -- 要撤销修改的文件
解释:一定要带上--俩个符号,表示撤销到最近一次更新的版本

情况2:修改了工作区代码后,又add到了暂存区中,但是版本库中未改变

方法1:使用reset指令 + hard选项指令:git reset --hard HEAD解释:HEAD-->直接写HEAD表示回退至当前版本,HEAD^表示上个版本,以此类推;
方法2:使用reset指令 + mixed选项指令:git reset --mixed HEAD此时又回到了情况一则:git checkout -- 要撤销修改的文件即可

情况3:工作区、暂存区、版本库中都被修改了

1.直接使用reset指令:指令:git reset --hard HEAD^或者:git reset --hard 字符串哈希值(先git log 查询一下哈希值)

删除文件:

1.假设删除了工作区的文件,例如rm file.txt 注意:删除也算工作区的变动,所以也要同步到暂存区和版本库 1.1:git add file.txt 1.2:git commit -m "delete file.txt" 2. git提供的删除命令 指令:git rm 要删除的文件名 再接着:git commit -m "delete file.txt"即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/896424.shtml

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

相关文章

Jupyter Notebook切换虚拟环境(Kernel管理)

我们在使用Jupyter Notebook的时候,打开文件发现只有一个Python3(ipykernel),我们自己在conda中创建的虚拟环境为什么没有显示出来,今天我就来和大家一起讨论一下! 在 Jupyter Notebook 中,kernel 是执行代码的核心。管…

【网络安全】常见的web攻击

1、SQL注入攻击 定义: 攻击者在HTTP请求中注入恶意的SQL代码,当服务器利用参数构建SQL语句的时候,恶意的SQL代码被一起构建,并在数据库中执行。 示例: 用户登录: 输入用户名xx, 密码 or 1 …

Java基础关键_012_包装类

目 录 一、基本数据类型对应的包装类 1.概览 2.说明 二、包装类 1.最大值与最小值 2.构造方法 3.常用方法(Integer为例) (1)compare(int x, int y) (2)max(int a, int b) 和 min(int a, int b) &…

【Java 面试 八股文】JVM 虚拟机篇

JVM 虚拟机篇 1. JVM组成1.1 JVM由那些部分组成,运行流程是什么?1.2 什么是程序计数器?1.3 你能给我详细的介绍Java堆吗?1.4 Java 虚拟机栈1.4.1 Java Virtual machine Stacks (java 虚拟机栈)1.4.2 栈和堆的区别1.4.3 垃圾回收是否涉及栈内…

QT 引入Quazip和Zlib源码工程到项目中,无需编译成库,跨平台,加密压缩,带有压缩进度

前言 最近在做项目时遇到一个需求,需要将升级的文件压缩成zip,再进行传输; 通过网络调研,有许多方式可以实现,例如QT私有模块的ZipReader、QZipWriter;或者第三方库zlib或者libzip或者quazip等&#xff1…

Fiddler在Windows下抓包Https

文章目录 1.Fiddler Classic 配置2.配置浏览器代理自动代理手动配置浏览器代理 3.抓取移动端 HTTPS 流量(可选)解决抓取 HTTPS 失败问题1.Fiddler证书过期了 默认情况下,Fiddler 无法直接解密 HTTPS 流量。需要开启 HTTPS 解密: 1…

DINOv2 + yolov8 + opencv 检测卡车的可拉拽雨覆是否完全覆盖

最近是接了一个需求咨询图像处理类的,甲方要在卡车过磅的地方装一个摄像头用检测卡车的车斗雨覆是否完全, 让我大致理了下需求并对技术核心做下预研究 开发一套图像处理软件,能够实时监控经过的卡车并判断其车斗的雨覆状态。 系统需具备以下…

AI除了可以能提高工作效率的还可以实现哪些功能?

AI除了能显著提高工作效率之外,其在众多领域的潜力远不止于此。 在教育领域,AI正逐步成为个性化教学的得力助手。通过分析学生的学习习惯和能力水平,AI能够定制出最适合每个学生的学习计划,不仅提升了学习效率,还极大地…

vscode settings(一):全局| 用户设置常用的设置项

参考资料 Visual Studio Code权威指南 by 韩骏 一. 全局设置与用户设置 1.1 Vscode支持两种不同范围的设置 用户设置(User Settings):这是一个全局范围的设置,会应用到所有的Visual Studio Code实例中。工作区设置(Workspace Settings):设…

seacmsv9注入管理员账号密码+orderby+limit

一、seacmsv9 SQL注入漏洞 1.1 seacms漏洞介绍 海洋影视管理系统(seacms,海洋cms)是一套专为不同需求的站长而设计的视频点播系统,采 用的是 php5.Xmysql 的架构,seacmsv9漏洞文件:./comment/api/index.p…

WPF学习之Prism(二)

前言 学习一下Prism。 1.Prism Prism框架提供了一套丰富的工具、类和模块,帮助开发人员实现以下功能: 模块化:Prism框架支持将应用程序拆分为多个模块,每个模块具有自己的功能和视图。这种模块化的设计使得应用程序更加灵活和…

【EB-03】 AUTOSAR builder与EB RTE集成

AUTOSAR builder与EB RTE集成 1. Import Arxml files to Tresos2. Run MultiTask Script3. Add Components3.1 Run EcuExtractCreator Script4. Mapping Component to Partitions5. Event Mapping/Runnables Mapping to Tasks6. Port Connect7. Run SvcAs_Trigger Script8. Ver…

算法教程:香槟塔问题

香槟塔问题 问题描述 我们将玻璃杯堆成金字塔状,第一排有 1 个玻璃杯,第二排有 2 个玻璃杯,依此类推,直到第 100 排。每个玻璃杯装一杯香槟。 然后,将一些香槟倒入最上面的第一个玻璃杯中。当最上面的玻璃杯装满时,任何多余的液体都会均匀地落到它左右两侧的玻璃杯上。当…

FastJSON 默认行为:JSON.toJSONString 忽略 null 字段

完整的 FakeRegistrationController 代码,这让我可以全面分析后端逻辑,特别是为什么空的字段(如 compareDate)不返回给前端。我将详细分析代码的每个接口,尤其是与 list 请求和字段返回相关的部分,并解释原…

在Linux环境下利用MTCNN进行人脸检测(基于ncnn架构)

概述 本文将详细介绍如何在Linux环境下部署MTCNN模型进行人脸检测,并使用NCNN框架进行推理。 1. CMake的安装与配置 下载CMake源码 前往CMake官网下载,找到适合您系统的最新版本tar.gz文件链接,或者直接通过wget下载:CMake官方…

算法day1 dfs搜索2题

一 火星人 拿到这种类似于排序的,这个就好比如我们之前学习dfs基础的时候里面的指数型枚举 指数型枚举数据与数据之间没有任何枚举,就比如选这个数字与不选组合型枚举数据与数据之间有联系,下一个数字不可以给上一个数字排列型枚举数据与数…

【MySQL篇】数据库基础

目录 1,什么是数据库? 2,主流数据库 3,MySQL介绍 1,MySQL架构 2,SQL分类 3,MySQL存储引擎 1,什么是数据库? 数据库(Database,简称DB&#xf…

网络安全事件研判

🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 研判(入侵检测) 研判我理解为人工层面对入侵检测事件进行再分析,即借助已有的设备告警根据经验判断是否为真实action 研判工作…

python整理文件下

我们使用 os.path.join() 函数拼接出文件要移动的目标地址。 并使用 os.path.exists() 函数配合 not 关键字找到未创建的文件夹。 这节课,我们会先创建文件夹,然后再移动文件到目标文件夹。如果文件夹不存在,我们需要先创建文件夹&#xff…

hackmyvm-buster

题目地址 信息收集 主机发现 ┌──(root㉿kali)-[/home/kali] └─# arp-scan -I eth1 192.168.56.0/24 Interface: eth1, type: EN10MB, MAC: 00:0c:29:34:da:f5, IPv4: 192.168.56.103 WARNING: Cannot open MAC/Vendor file ieee-oui.txt: Permission denied WARNING: C…