【Git】Git 学习笔记_操作本地仓库

1. 安装与初始化配置

1.1 安装

下载地址

在文件夹里右键点击 git bash here 即可打开命令行面板。

git -v // 查看版本

1.2 配置

git config --global user.name "heo"
git config --global user.email xxx@gmail.com
git config --global credential.helper store   // 保存
git cnofig --global --list   //  查看配置信息

在这里插入图片描述

2. 新建仓库

mkdir learn-git  // 创建文件夹
git init  [xx]  // 初始化 git 仓库,为仓库名【可选】
ls -a  // 查看该目录下所有文件
ls -altr  // 查看该目录下所有文件的详细信息 或者  -ltr
rm -rf  // 删除某个文件夹,删除 .git 文件夹即变成普通文件目录
git clone https://github.com/xx/xx.git  // 克隆 github 仓库到本地

3. 工作区域和文件状态

在这里插入图片描述

在这里插入图片描述

4. 添加和提交文件

git status  // 查看仓库状态
echo "这是第一个文件" > file1.txt  // 将回显的内容输出到一个文件内
cat file1.txt  // 查看文件内容
git add file1.txt // 将该文件提交到暂存区(文件状态从红色变为绿色)
git commit -m "第一次提交"  // 提交文件到本地仓库,只能提交本身在暂存区的文件
mv file.txt file4.txt  // 修改文件名从 file.txt 改为 file4.txt
git add *.txt  // 通配符
git add .  // 提交所有文件到暂存区
git commit // 提交到本地仓库,然后会进入 vim 编辑器,编辑提交信息
git log  // 查看提交本地仓库的日志
git log --oneline // 查看简略的日志

5. 回退版本

在这里插入图片描述

--mixed 为默认参数。

git reflog  // 查看操作的历史记录
cp -rf repo repo-copy  // 复制仓库
git reset --soft <要回退的版本id>  // 回退到某个版本
ls  // 查看工作区的内容
git ls-files  // 查看暂存区的内容

要谨慎使用 --hard ,但是误操作后不用担心,可以根据操作历史记录通过 reset 回溯到误操作前的版本。比如:git reset --hard <版本号>

6. 查看差异

git diff

默认比较工作区和暂存区的内容。

在这里插入图片描述

当我们将它提交到暂存区,再用 git diff 查看,发现没有输出内容了。

使用 git diff HEAD 比较工作区和版本库之间的差异。操作发现又会输出以上信息,因为此时我们还未提交。HEAD 指向分支的最新提交节点。

使用 git diff --cached 比较暂存区和版本库之间的差异。操作发现又会输出以上信息。

然后我们进行提交。上述两种操作就没有任何输出了。

git diff 版本号1 版本号2 就可以查看两次版本之间的差异。

git diff HEAD~ HEAD 或者 git diff HEAD^ HEAD 查看最新提交和上一次提交的差异。

git diff HEAD~2 HEAD 查看最新提交和 2 次前提交的版本的差异。

git diff HEAD~ HEAD file3.txt 查看某文件的信息。

7. 删除文件

rm file1.txt 删除工作区的文件,但是没有删除暂存区的文件。

git ls-files 查看暂存区的文件。

git add file1.txt 可以“隐性”的从暂存区删除文件。

git rm file2.txt 同时删除工作区和暂存区的内容。

git rm --cached file.txt 从暂存区删除文件,但保留在当前工作区中。

然后进行提交,否则删除的文件在版本库中还是存在的。git commit -m "delete"

8. .gitignore文件

忽略掉不应该被加入到版本库中的文件,不会控制到已经添加到版本库中的文件。

存放应该被忽略的文件:

  1. 系统或者软件自动生成的文件
  2. 编译产生的中间文件和结果文件
  3. 运行时生成的日志文件、缓存文件和临时文件
  4. 涉及身份、密码、口令、秘钥等敏感信息的文件

echo example.log > .gitignore

-am 参数 同时完成添加至暂存区和提交至仓库的两个操作。

echo >> 是在文本后面追加一行的意思。

空文件夹不会被纳入版本控制中。

git status -s 查看状态的简略模式。
在这里插入图片描述
?? 第一个问号表示暂存区的状态,第二个问号表示工作区的状态。

将文件夹添加到 .gitignore 中,temp/ ,忽略文件夹。

.gitignore 文件夹匹配规则:https://git-scm.com/docs/gitignore

从上到下按行匹配,每一行代表一个忽略模式。

  • 空行或者以#开头的行会被Git忽略。一般空行用于可读性的分隔,#一般用作注释
  • 使用标准的glob模式匹配,例如:星号*通配任意个字符;问号匹配单个字符;中括号[]表示匹配列表中的单个字符,比如: [abc]表示a/b/c
  • 两个星号 ** 表示匹配任意的中间目录
  • 中括号可以使用短中线连接,比如:[0-9] 表示任意一位数字, [a-z]表示任意一位小写字母
  • 感叹号 表示取反
# 忽略所有的 .a 文件
*.a
# 但跟踪所有的 lib.a,即便你在前面忽略了 .a文件
!lib.a
# 只忽略当前目录下的TODO文件,而不忽略 subdir/TODO
/TODO
# 忽略任何目录下名为 build的文件夹
build/
# 忽略 doc/notes.txt,但不忽略 doc/server/arch.txt
doc/*.txt
# 忽略 doc/ 目录及其所有子目录下的 .pdf 文件
doc/**/*.pdf

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深度学习入门-基于Python的理论与实现摘要记录

基本是《深度学习入门-基于Python的理论与实现》的复制粘贴&#xff0c;以作为日后的检索和查询使用 感知机 感知机接收多个输入信号&#xff0c;输出一个信号。 感知机原理 感知机接收多个输入信号&#xff0c;输出一个信号。 图2-1是一个接收两个输入信号的感知机的例子。…

uniapp:打包ios配置隐私协议框

使用uniapp打包ios 上架商店需要配置隐私协议政策弹窗。当用户点击确定后才能继续操作。 首先manifest.json中配置使用原生隐私政策提示框是不支持ios的。不用勾选。 解决思路&#xff1a; 1、新建页面&#xff1a;iosLogin.vue&#xff0c;pages.json中 这个页面需要放在第一…

计算机网络:概述

0 学时安排及讨论题目 0.1讨论题目&#xff1a; CSMA/CD协议交换机基本原理ARP协议及其安全子网划分IP分片路由选择算法网络地址转换NATTCP连接建立和释放再论网络体系结构 0.2 本节主要内容 计算机网络在信息时代中的作用 互联网概述 互联网的组成 计算机网络在我国的发展 …

extractvalue报错注入理论及实战

报错注入 什么是报错注入 构造语句&#xff0c;让错误信息中夹杂可以显示数据库内容的查询语句&#xff0c;返回报错提示中包括数据库中的内容 如上图所示&#xff0c;通过group by的报错&#xff0c;我们可以知道列数是多少 输入正确的查询数据库的SQL语句&#xff0c;虽然可…

Zookeeper经典应用场景实战(二)

1. Zookeeper 分布式锁实战 1.1 什么是分布式锁 在单体的应用开发场景中涉及并发同步的时候&#xff0c;大家往往采用Synchronized&#xff08;同步&#xff09;或者其他同一个JVM内Lock机制来解决多线程间的同步问题。在分布式集群工作的开发场景中&#xff0c;就需要 一种更…

android studio 字节码查看工具jclasslib bytecode viewer

jclasslib bytecode viewer 是一款非常好用的.class文件查看工具&#xff1b; jclasslib bytecode editor is a tool that visualizes all aspects of compiled Java class files and the contained bytecode. Many aspects of class files can be edited in the UI. In addit…

excel表的筛选后自动求和

一般都使用subtotal函数。 通过看一个大佬的视频&#xff0c;发现可以有更简单的方法。 首先任意筛选数据(ctrlshiftl)&#xff0c; 然后选中需要求和的列的最下方的空白单元格&#xff0c;再按alt。 回车即可。 实质它还是用的subtotal函数

【TiDB】TiDB CLuster部署

目录 0 大纲 一 集群部署工具TiUP简介 1 TiUP 简介 2 TiUP使用 3 TiUP使用举例 二 TiDB Cluster安装配置需求 1 生产环境硬件需求 2 操作系统需求 三 TIDB部署 1 软硬件需求以及前置检查​编辑 2 安装TiUP 组件 ​3 集群拓扑文件 4 执行部署命令 &#xff08;1&…

Spring Gateway网关服务分析

关键原理解析 基本原理 Spring Cloud Route核心可以概括为Gateway过滤器框架和Route定义和解析两块内容。 DefaultFilter、GatewayFilter、GlobalFilter 三种过滤器的区别及执行顺序 SpringCloud Gateway中的提到的过滤器包括三种类型&#xff1a; DefaultFilter&#xff1…

金融信贷行业如何准确——大数据精准定位获客渠道

通过大数据精准获客&#xff0c;不仅可以及时拦截网址浏览量&#xff0c;还可以访问移动贷款应用软件的高频活跃客户和新注册客户。此外&#xff0c;通过大数据进行准确的客户获取&#xff0c;还可以获得电话座机号码的实时通信记录&#xff0c;捕捉小程序应用程序和关键词搜索…

使用TS进行Vue-Router的Meta类型扩展

文章目录 1、前言2、解决 1、前言 使用Vue-Router时&#xff0c;会将一些字段信息附加到路由的Meta对象里面&#xff0c;比如图标icon&#xff0c;标题&#xff0c;权限等&#xff0c;如下&#xff1a; {path: /billboard/board/:boardId,name: billboardBoard,props: true,c…

【电路笔记】-基尔霍夫电路定律

基尔霍夫电路定律 文章目录 基尔霍夫电路定律1、框架和定义2、基尔霍夫电流定律3、基尔霍夫电压定律4、基尔霍夫定律应用5、基尔霍夫定律的局限性6、总结 在本文中&#xff0c;将介绍最基本、最重要的电路定律之一。 这些定律由德国医生古斯塔夫基尔霍夫 (Gustav Kirchoff) 于 …

apachesolr中简单使用

core使用 首先点击add core 可以看到报错solrconfig.xml不在new_core目录下&#xff0c;new_core是我们点击后自动创建的 那么我们将D:\solr2\solr-9.3.0\solr-9.3.0\server\solr\configsets下的任何一个目录下的conf拷贝到new_core过去 这里是使用_default下的conf目录拷贝…

解决方案 |法大大电子合同推动汽车后市场多元数智化发展

近日&#xff0c;商务部等9部门联合发布《关于推动汽车后市场高质量发展的指导意见》&#xff08;以下简称《指导意见》&#xff09;&#xff0c;明确了汽车后市场发展的总体目标和主要任务&#xff0c;系统部署推动汽车后市场高质量发展&#xff0c;促进汽车后市场规模稳步增长…

kubernetes集群编排——k8s资源监控

资源限制 上传镜像 [rootk8s2 limit]# vim limit.yaml apiVersion: v1 kind: Pod metadata:name: memory-demo spec:containers:- name: memory-demoimage: stressargs:- --vm- "1"- --vm-bytes- 200Mresources:requests:memory: 50Milimits:memory: 100Mi [rootk8s2…

3D可视化字母出现频率_vtkLinearExtrusionFilter

开发环境&#xff1a; Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example参考代码目的&#xff1a;学习与总结 demo解决问题&#xff1a;统计输入文本中字母出现的频率&#xff0c;不区分大小写&#xff0c;使用3D可是化方式进行显示&…

数据结构-Prim算法构造无向图的最小生成树

引子&#xff1a; 无向图如果是一个网&#xff0c;那么它的所有的生成树中必有一颗生成树的边的权值之和是最小的&#xff0c;我们称 这颗权值和最小的树为&#xff1a;“最小生成树”&#xff08;MST&#xff09;。 其中&#xff0c;一棵树的代价就是树中所有权值之和。 而…

STM32 TIM定时器,配置,详解(1)

计数器寄存器(TIMx_CNT)、预分频器寄存器(TIMx_PSC)、自动重载寄存器(TIMx_ARR)。 PSC预分频器&#xff0c;顾名思义&#xff0c;先预备一下分频&#xff0c;有时候频率过高&#xff0c;后面的定时器承受不住&#xff0c;就先用PSC先分频一下。如何分频的&#xff1f;将每接受到…

地铁机电设备健康管理现状及改善方法

轨道交通和我们的生活息息相关&#xff0c;从火车到地铁再到轻轨&#xff0c;给人们的出行带来了很大的便利。因此&#xff0c;保障轨道交通的的正常运行和安全至关重要&#xff0c;需要运维人员及时排查设备的问题&#xff0c;解决故障&#xff0c;保证轨道交通的安全运行。本…

干洗店洗鞋店管理系统app小程序;

干洗店洗鞋店管理系统是一款专业的洗衣店管理软件&#xff0c;集成了前台收费收银系统、会员卡管理系统和财务报表系统等强大功能。界面简洁优美&#xff0c;操作直观简单。这款系统为干洗店和洗衣店提供了成本分析、利润分析、洗衣流程管理等诸多实用功能&#xff0c;用全新的…