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

[Git] Git下载及使用 从入门到精通 详解(附下载链接)

前言


目录

Git概述

简介

下载

Git代码托管服务

Git常用命令

Git全局配置

获取Git仓库

在本地初始化一个Git仓库

从远程仓库克隆

基本概念

工作区文件状态

本地仓库操作

远程仓库操作

分支操作

标签操作

在IDEA中使用Git

在IDEA中配置Git

本地仓库操作

远程仓库操作

分支操作


Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(java类、xml文件、html页面等),在软件开发过程中被广泛使用。

主要功能

  • 代码回溯
  • 版本切换
  • 多人协作
  • 远程备份

远程备份

选择从VCS获取,版本控制选择Git

在gitee中找到要打开的项目

点击克隆/下载

复制HTTP链接,粘贴到URL

点击克隆,即可完成远程备份

Git概述

简介

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(java类、xml文件、html页面等),在软件开发过程中被广泛使用。通过Git仓库来存储和管理这些文件,Git仓库分为两种:

本地仓库:开发人员自己电脑上的Git仓库

远程仓库:远程服务器上的Git仓库

  • commit:提交,将本地文件和版本信息保存到本地仓库
  • push:推送,将本地仓库文件和版本信息上传到远程仓库
  • pull:拉取,将远程仓库文件和版本信息下载到本地仓库

下载

下载安装Git

Git-2.45.2-64-bit.zip夸克网盘打开
链接:https://pan.quark.cn/s/775662e9bfb2
提取码:kZ5U

下载解压后

 双击exe文件,之后一直点下一步即可

安装好之后右键点击exe,出现如下说明安装成功

Git GUI Here:打开Git图形界面

Git Bash Here:打开Git命令行

Git代码托管服务

Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库呢?
我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。
gitHub(地址:https://github.com/),是一个面向开源及私有软件项目的托管平台,因为只支持Git 作为唯一的版本库格式进行托管,故名gitHub
码云(地址:https://gitee.com/),是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub 码云速度会更快
GitLab (地址: https://about.gitlab.com/),是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务
BitBucket(地址:https://bitbucket.org/),是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户

这里使用码云 Gitee

Git常用命令

Git全局配置

当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息。
在Git 命令行中执行下面命令:
设置用户信息

git config --global username "itcast"
git config --global user.email "itcast@itcast.cn"

查看配置信息

git config --list

注意:上面设置的user.name和user.email并不是我们在注册码云账号时使用的用户名和邮箱,此处可以任意设置,只是作为用户的标识。

获取Git仓库

要使用Git对代码进行版本控制,首先需要获得Git仓库。

获取Git仓库通常有两种方式:

  • 在本地初始化一个Git仓库
  • 从远程仓库克隆
     

在本地初始化一个Git仓库

获取Git仓库-本地初始化

执行步骤如下:

1.在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库
2.进入这个目录中,点击右键打开Git bash窗口
3. 执行命令 git init
如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功

创建本地仓库

新建文件夹

在文件夹中右键打开Git的命令行窗口

输入代码

git init

在文件夹中出现git文件

从远程仓库克隆

可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地

命令形式:git clone [远程Git仓库地址]

新建一个文件夹

在文件夹中打开Git的命令行窗口

复制之前创建的仓库的地址

 在命令行输入

得到本地仓库

基本概念

版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码
暂存区:.qit文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方

工作区

————>

添加选择的改变

git add

暂存区

————>

提交改变

git commit

版本库

 在工作区创建一个.txt文件

打开Git命令行窗口

 -m后面是备注信息

lab7744是版本号

下面是发生的改变,insertion 新增了一个文件

工作区文件状态

Git工作区中的文件存在两种状态:

  • untracked未跟踪(未被纳入版本控制)
  • tracked 已跟踪(被纳入版本控制)

1) Unmodified 未修改状态
2) Modified 已修改状态
3) Staged 已暂存状态

文件的状态会跟随我们执行Git的命令发生变化

查看状态

同一个文件只用提交一次到暂存区,之后再进行修改直接提交到版本库,会把原来的删掉,将新提交的存进去

本地仓库操作

本地仓库常用命令如下:

  • git status      查看文件状态
  • git add          将文件的修改加入暂存区
  • git reset        将暂存区的文件取消暂存或者是切换到指定版本
  • git commit     将暂存区的文件修改提交到版本库
  • git log            查看日志

 再文件中新建2.txt

2.txt红色表示新建的文件或者被修改了

打开1.txt,修改试一下

将文件加入到暂存区,可以两个文件一起加

查看状态

reset 1.txt并查看状态

将1.txt重新放回暂存区

提交到版本库

查看日志

版本回溯

回到新增1.txt的版本

此时工作区中的2.txt消失了

指当前的版本

再回到有2.txt的版本

2.txt文件又出现了

远程仓库操作

远程仓库的操作包括:

  • git remote           查看远程仓库
  • git remote add    添加远程仓库
  • git clone              从远程仓库克隆
  • git pull                 从远程仓库拉取
  • git push               推送到远程仓库

查看

如果想查看已经配置的远程仓库服务器,可以运行git remote命令,它会列出每一个远程服务器的缩写,如果已经克隆了远程仓库,那么至少应该能看到origin,这是git克隆的仓库服务器的默认名字。

本地的仓库就是从远程仓库克隆过来的,已经和远程仓库关联了,所以第一个显示origin,第二个指令有显示

加上-v 可以显示仓库的详细地址

一个本地仓库对应一个远程仓库

再创建一个远程仓库

创建一个文件夹3

将3初始化为本地仓库

因为3刚刚创建,还没有关联远程仓库,所以执行命令git remote -v后,返回为空

将3与远程仓库关联

添加远程仓库,运行git remote add <shortname> <url> 添加一个新的远程Git仓库,shortname是远程仓库名字的简写。(仓库服务器的默认名为origin)

因为是先创建的本地仓库,所以需要先关联远程仓库

如果是从远程仓库克隆生成的本地仓库,就不需要关联远程仓库这一步了

克隆
如果想获得一份已经存在了的 Git 远程仓库的拷贝,这时就要用到 git clone 命令。

Git 克隆的是该 Git 仓库服务器上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。
克隆仓库的命令格式是:git clone [url]

推送
将本地仓库内容推送到远程仓库,可以使用命令:git push [remote-name] [branch-name]

远程仓库的名字 推送分支的名字

远程仓库origin 指定分支master

推送成功

新建文件夹4,用于拉取代码

复制项目地址

看到已经将远程仓库的代码下载到文件夹了

没有找到.git文件

可以看到.git文件再test文件下

使用cd test/进入test文件

使用git log查询版本信息

版本信息在.git中

4修改文件2.txt

将文件提交

git add . 将所有文件放到暂存区

git commit -m'' 将暂存区中的所有文件提交到版本库,这里是提交到自己的本地仓库,还没有提交到远程仓库

推送到远程仓库

从远程仓库克隆既包括了代码,又包含了版本信息

拉取

git pull 命令的作用是从远程仓库获取最新版本合并到本地仓库,命令格式:git pull [short-name] [branch-name]

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatrefusing to merge unrelated histories )
解决此问题可以在git pull命令后加入参数--allow-unrelated-histories

在文件夹2中进行拉取

分支操作

分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
通过git init 命令创建本地仓库时默认会创建一个master分支。

会有一个指针head,用于指向当前分支
关于分支的相关命令:

  • git branch                                     查看分支
  • git branch [name]                          创建分支
  • git checkout [name]                      切换分支
  • git push [shortName] [name]        推送至远程仓库分支
  • git merge [name]                           合并分支
  • git hranch - d[name]                      删除分支

在文件夹2中进行演示 

*表示当前处于哪个分支

创建分支b1

切换到b1分支

创建文件3.txt

添加到暂存区,提交

再创建一个文件4.txt

提交

切换到master分支

看到刚才新建的两个文件3.txt 4.txt都不存在,说明b1分支的操作并没有影响master分支,两个分支是相互独立、互不影响

切换到b1分支

看到3.txt 4.txt又出现了

合并分支

将指定分支的代码合并到当前分支,所以先换到master分支

将b1分支的代码合并到当前分支

此时文件夹中文件为

将master分支的代码推送到远程仓库

将b1分支的代码推送到远程仓库

删除分支

创建分支b2

删除分支b2

git branch --help找到帮助文档

查看

  • git branch             列出所有本地分支
  • git branch -r          列出所有远程分支
  • git branch -a         列出所有本地分支和远程分支

标签操作

Git 中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0、v1.2等)。

标签相关的命令

  • git tag                                             列出已有的标签
  • git tag [name]                                 创建标签
  • git push [shortName] [name]          将标签推送至远程仓库
  • git checkout -b [branch] [name]      检出标签

当前文件夹中为

创建标签v1.0

新建文件5.txt  6.txt

提交到版本库

此时标签v1.0中没有5.txt和6.txt这两个文件

将标签推送到远程仓库

此时远程仓库中没有标签

git push origin 后面可以是分支名和标签名

再远程仓库可以看到新增的标签

可以对这个标签进行下载

打开后会发现这个文件中没有后来添加的5.txt和6.txt

再创建一个标签v2.0,并推送至远程仓库

从远程仓库中下载v2.0版本

打开后看到有5.txt和6.txt的文件

查看v1.0标签的文件,在此新建了一个分支bv1

文件如下

在IDEA中使用Git

在IDEA中配置Git

在IDEA中使用Git,本质上还是使用的本地安装的Git软件,所以需要在IDEA中配置Git

先退出项目,ctrl+alt+s打开设置,此时的设置是对所有项目有效

找到Git的版本控制,在Git可执行文件路径可以看到自动识别了Git的路径,点击测试,如果出现了Git的版本号就说明识别正确,如果没有就要自己手动设置Git可执行文件路径

点击确定,配置成功

创建一个项目,用来演示Git操作

本地仓库操作

在IDEA中使用Git获取仓库有两种方式:

本地初始化仓库

从远程仓库克隆

本地初始化仓库

点击创建Git仓库,在文件夹下可以看到出现了.git文件,说明本地仓库创建成功

本地仓库操作:

将文件加入暂存区

将暂存区的文件提交到版本库

查看日志

 将文件加入暂存区,选择添加

但是IDEA简化了操作,可以直接提交

选择提交文件

只需要提交源码必要的配置文件即可

.gitignore文件用来说明哪些文件不提交

# 默认忽略的文件

在文件中加一段注释信息

右侧会出现更改前后两端代码的对比

远程仓库操作

查看远程仓库

添加远程仓库

推送至远程仓库

从远程仓库拉取

分支操作

查看分支

创建分支

切换分支

将分支推送到远程仓库

合并分支

 右下角点击

可以看到分支

新建分支

提交并推送,此时是b1分支

可以看到现在有两个分支

切换分支

先拉取最新版本,再提交自己写的版本,因为可能别人在自己提交之前就提交了一个版本,造成自己现在的版本和最新的版本相差了几个版本,出现报错,所以应该先获取最新版本 

谁提交出现问题,谁改

本文根据黑马程序员的Git零基础入门所写

【2023最新Git快速入门,完整的git项目管理工具教程,git入门到精通!-哔哩哔哩】

代码回退

git restore --staged 文件名

在该文件夹下新建文件8.txt,先查看状态,然后提交到暂存区

admin@DESKTOP-73NNB6O MINGW64 /e/1/2/test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.Untracked files:(use "git add <file>..." to include in what will be committed)8.txtnothing added to commit but untracked files present (use "git add" to track)admin@DESKTOP-73NNB6O MINGW64 /e/1/2/test (master)
$ git add .

 查看状态,看到刚才提交到暂存区的文件

使用命令将暂存区中的文件恢复到工作区

git restore --staged 文件名

 查看状态,文件已经回到工作区

admin@DESKTOP-73NNB6O MINGW64 /e/1/2/test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.Changes to be committed:(use "git restore --staged <file>..." to unstage)new file:   8.txtadmin@DESKTOP-73NNB6O MINGW64 /e/1/2/test (master)
$ git restore --staged 8.txtadmin@DESKTOP-73NNB6O MINGW64 /e/1/2/test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.Untracked files:(use "git add <file>..." to include in what will be committed)8.txtnothing added to commit but untracked files present (use "git add" to track)

注意!已经在本地仓库的文件,用git restore --staged 命令无论如何也恢复不到工作区,因为restore只针对暂存区
 

git restore 文件名

将暂存区的文件撤销更改

git restore 文件名

文件8.txt中内容

将8.txt提交到暂存区

在工作区修改8.txt,修改后为

执行命令撤销更改

打开8.txt,看到恢复到修改前的状态

git revert commitId

使用另外一个本地仓库,先创建文件4.txt 5.txt 6.txt

将这三个文件提交到暂存区,并依次提交到版本库

查看日志,得到commitId

执行命令git revert commitId这里commitId使用提交5.txt的

查看日志

在文件夹中看到5.txt消失了

 再执行命令,这里使用的是刚才命令的commitId

发现5.txt文件又出现了

查看日志

接下来看看推送到远程仓库的情况

新建文件7、8、9

将所有文件推送到远程仓库

查看日志

执行命令

查看日志

再文件夹中8.txt不见了,但远程仓库中没有发生变化

将代码推送到远程仓库

远程仓库中的8.txt也不见了

查看日志

执行以下命令,使用刚才命令的commitId

8.txt文件出现

推送到远程仓库

查看日志

在远程仓库中出现8.txt

git reset命令回退

[Git] 演示回退命令reset的三种模式soft、hard、mixed详解

git stash储存

[Git] git stash命令详解-CSDN博客

相关文章:

[Git] Git下载及使用 从入门到精通 详解(附下载链接)

前言 目录 Git概述 简介 下载 Git代码托管服务 Git常用命令 Git全局配置 获取Git仓库 在本地初始化一个Git仓库 从远程仓库克隆 基本概念 工作区文件状态 本地仓库操作 远程仓库操作 分支操作 标签操作 在IDEA中使用Git 在IDEA中配置Git 本地仓库操作 远程仓…...

Linux源码阅读笔记-USB驱动分析

基础层次详解 通用串行总线&#xff08;USB&#xff09;主要用于连接主机和外部设备&#xff08;协调主机和设备之间的通讯&#xff09;&#xff0c;USB 设备不能主动向主机发送数据。USB 总线采用拓扑&#xff08;树形&#xff09;&#xff0c;主机侧和设备侧的 USB 控制器&a…...

【超级详细解释】力扣每日一题 134.加油站 48. 旋转图像

134.加油站 力扣 这是一个很好的问题。这个思路其实基于一种贪心策略。我们从整个路径的油量变化来理解它&#xff0c;结合一个直观的“最低点法则”&#xff0c;来确保找到正确的起点。 问题的核心&#xff1a;油量差值的累积 对于每个加油站&#xff0c;我们有两个数组&…...

数据挖掘基本架构知识点

数据挖掘的基本架构主要包含以下几个部分&#xff1a; 一、数据获取 1. 数据源 - 可以是数据库&#xff08;如关系型数据库MySQL、Oracle等&#xff09;、文件系统&#xff08;如CSV文件、XML文件等&#xff09;、网络数据&#xff08;如网页内容、社交媒体数据&#xff09;等…...

LangChain中使用Prompt01

1.引入提示模板 from langchain.prompts import (SystemMessagePromptTemplate,AIMessagePromptTemplate,HumanMessagePromptTemplate, )2.设置系统提示 system_template_text"你是一位专业的翻译&#xff0c;能够将{input_language}翻译成{output_language}&#xff0c…...

如何使用bpmn-js实现可视化流程管理

介绍 BPMN-JS是一个流行的开源库&#xff0c;用于在Web应用程序中可视化、创建、编辑和分析BPMN&#xff08;Business Process Model and Notation&#xff0c;业务流程建模与表示法&#xff09;2.0 图。BPMN是一种国际标准的图形化语言&#xff0c;用于描述企业中的业务流程&a…...

【PostgreSQL 】实战篇——如何使用 EXPLAIN 和 ANALYZE 工具分析查询计划和性能,优化查询

在数据库管理中&#xff0c;优化查询性能是确保应用程序高效运行的关键因素之一。 随着数据量的不断增长和复杂查询的增多&#xff0c;理解查询的执行计划变得尤为重要。 PostgreSQL 提供了强大的工具 EXPLAIN 和 ANALYZE&#xff0c;帮助开发者分析查询计划和性能&#xff0…...

List、Map、Set 三个接口存取元素时,各有什么特点

List、Map、Set是Java集合框架中的三个核心接口&#xff0c;它们在存取元素时各自具有独特的特点。以下是对这三个接口存取元素特点的详细分析&#xff1a; List接口 有序性&#xff1a; List中的元素是有序的&#xff0c;它们按照插入的顺序进行排列。 可重复性&#xff1a…...

掌握 ASP.NET Web 开发:从基础到身份验证

ASP.NET 是微软开发的一个功能强大的框架&#xff0c;广泛用于构建现代化的 Web 应用程序。它支持 MVC 架构、Web API、Razor 语法&#xff0c;并提供完善的身份验证与授权机制。本文将介绍 ASP.NET 的基础知识、MVC 模式、Web API 开发、Razor 语法&#xff0c;以及如何实现身…...

【C++图文并茂】01背包问题不会?超详细的详解,看完保证你会

大家好&#xff0c;今天 给大家讲解01背包问题 有N件物品和一个容量为V的背包。第i件物品的体积是c[i]&#xff0c;价值是w[i] 。每件物品只能用一次&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 01背包问题是典型的动态规划问题&#xff0c;我们拿葡萄矿泉水和西…...

SQL自学:什么是子查询,如何使用它们

在 SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;的世界里&#xff0c;子查询是一种强大的工具&#xff0c;它允许我们在一个 SQL 查询内部嵌套另一个查询。子查询也被称为内部查询或嵌套查询&#xff0c;为我们提供了一种灵活且强大的方式…...

No.10 笔记 | PHP学习指南:PHP数组掌握

本指南为PHP开发者提供了一个全面而简洁的数组学习路径。从数组的基本概念到高级操作技巧&#xff0c;我们深入浅出地解析了PHP数组的方方面面。无论您是初学者还是寻求提升的中级开发者&#xff0c;这份指南都能帮助您更好地理解和运用PHP数组&#xff0c;提高编码效率和代码质…...

RS-232 串口通信和 RS-485 串口通信的区别

RS-232 串口通信和 RS-485 串口通信有以下区别&#xff1a; 1. 通信方式&#xff1a; RS-232&#xff1a;全双工通信方式&#xff0c;即数据的发送和接收可以同时进行。在全双工模式下&#xff0c;通信双方可以在同一时刻既发送数据又接收数据&#xff0c;就像两个人可以同时…...

【K8s】专题十四(1):Kubernetes 安全机制之 RBAC

本文内容均来自个人笔记并重新梳理,如有错误欢迎指正! 如果对您有帮助,烦请点赞、关注、转发、订阅专栏! 专栏订阅入口 | 精选文章 | Kubernetes | Docker | Linux | 羊毛资源 | 工具推荐 | 往期精彩文章 【Docker】(全网首发)Kylin V10 下 MySQL 容器内存占用异常的解决…...

8. 多态、匿名内部类、权限修饰符、Object类

文章目录 一、多态 -- 花木兰替父从军1. 情境2. 小结 二、匿名内部类三、权限修饰符四、Object -- 所有类的父类(包括我们自己定义的类)五、内容出处 一、多态 – 花木兰替父从军 1. 情境 我们现在新建两个类HuaMuLan和HuaHu。HuMuLan是HuaHu的女儿&#xff0c;所以她会有她父…...

CentOS/Ubuntu/Debian安装LibeventCentOS安装Libevent库(含示例代码)库(含示例代码)

使用命令&#xff1a;CentOS安装Libevent库&#xff08;含示例代码&#xff09; sudo yum install libevent-devel Ubuntu/Debian: sudo apt install libevent-dev 示例代码&#xff1a; #include <stdio.h> #include <stdlib.h> #include <unistd.h> …...

【大数据】数据采集工具sqoop介绍

文章目录 什么是sqoop?一、Sqoop的起源与发展二、Sqoop的主要功能三、Sqoop的工作原理四、Sqoop的使用场景五、Sqoop的优势六、Sqoop的安装与配置 sqoop命令行一、Sqoop简介与架构二、Sqoop特点三、Sqoop常用命令及参数四、使用示例五、注意事项 什么是sqoop? Sqoop是一款开…...

vite学习教程02、vite+vue2配置环境变量

文章目录 前言1、安装依赖2、配置环境变量3、应用环境变量4、运行和构建项目资料获取 前言 博主介绍&#xff1a;✌目前全网粉丝3W&#xff0c;csdn博客专家、Java领域优质创作者&#xff0c;博客之星、阿里云平台优质作者、专注于Java后端技术领域。 涵盖技术内容&#xff1…...

k8s 的网络通信

目录 1 k8s通信整体架构 2 flannel 网络插件 2.1 flannel 插件组成 2.2 flannel 插件的通信过程 2.3 flannel 支持的后端模式 3 calico 网络插件 3.1 calico 简介 3.2 calico 网络架构 3.3 部署 calico 1 k8s通信整体架构 k8s通过CNI接口接入其他插件来实现网络通讯。目前比较…...

【编程基础知识】掌握Spring MVC:从入门到精通

摘要&#xff1a; 本文将深入探讨Spring MVC框架的核心概念、组件和工作流程。读者将学习如何将Spring MVC应用于现代Web应用程序开发中&#xff0c;并通过实际代码示例和流程图&#xff0c;理解其强大的功能和灵活性。文章最后&#xff0c;我们将通过一个Excel表格总结全文内容…...

多线程下,@Transactional失效解决

一、问题复现 批量插入时&#xff0c;使用多线程对插入数据实现分批插入&#xff0c;在service层使用Transactional注解&#xff0c;对应方法中线程池中开辟的子线程抛出异常时&#xff0c;没有回滚事务。 二、原因分析 事务管理范围不正确&#xff1a;Transactional注解仅对…...

PyCharm 项目解释器切换指南:如何在项目中更换 Python Interpreter

PyCharm 项目解释器切换指南&#xff1a;如何在项目中更换 Python Interpreter 文章目录 PyCharm 项目解释器切换指南&#xff1a;如何在项目中更换 Python Interpreter一 Settings 设置二 Project 选项三 Conda Environment四 更换 Environment 本文详细介绍了在 macOS 系统中…...

STM32F407寄存器操作(DMA+SPI)

1.前言 前面看B站中有些小伙伴吐槽F4的SPIDMA没有硬件可控的CS引脚&#xff0c;那么今天我就来攻破这个问题 我这边暂时没有SPI的从机芯片&#xff0c;并且接收的过程与发送的过程类似&#xff0c;所以这里我就以发送的过程为例了。 2.理论 手册上给出了如下的描述 我们关注…...

Oracle 的 OCP 与 MySQL 的 OCP 的区别

事务开始与提交&#xff08;以 Java 代码中的事务操作为例&#xff09; Oracle&#xff08;在 Java 中使用 JDBC 进行事务操作&#xff09; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement;public cla…...

数据治理、数据清洗定义、区别以及数据清洗常用方法

一、数据治理定义 数据治理是一种组织数据管理的方法&#xff0c;涉及数据的收集、存储、处理、分析和共享等方面&#xff0c;旨在最大程度地利用数据资产并降低数据相关的风险。‌ 数据治理确保数据的质量、安全性、合规性和可用性&#xff0c;以支持组织的决策和运营活动。‌…...

web基础-攻防世界

get-post 一、WP &#xff08;题目本质&#xff1a;get与post传参方法&#xff09; 用 GET 给后端传参的方法是&#xff1a;在?后跟变量名字&#xff0c;不同的变量之间用&隔开。例如&#xff0c;在 url 后添加/&#xff1f;a1 即可发送 get 请求。 利用 hackbar 进行…...

Java基础-String Class(字符串类)

String Java String 类概览 String 类是 Java 中最常用的类之一&#xff0c;用于处理字符串。以下是 String 类的主要特性和操作&#xff1a; 特性/操作描述不可变性String 对象一旦创建就不能被修改创建方式使用双引号 “” 或 String 构造函数字符串池Java 维护字符串常量池…...

《Linux服务与安全管理》| 服务进程与网络配置

《Linux服务与安全管理》| 服务进程与网络配置 目录 《Linux服务与安全管理》| 服务进程与网络配置 &#xff08;1&#xff09; 写出查看NetworkManager服务状态的命令。 &#xff08;2&#xff09; 写出查看NetworkManager服务自启动状态的命令。 &#xff08;3&#xff0…...

No.15 笔记 | CSRF 跨站请求伪造

目录 一、基础知识 &#xff08;一&#xff09;cookie 和 session、同源策略 &#xff08;二&#xff09;CSRF 原理 二、CSRF 类型 &#xff08;一&#xff09;GET 类型 &#xff08;二&#xff09;POST 类型 三、CSRF 实例讲解 &#xff08;一&#xff09;真实案例 &am…...

解决linux中pip速度过慢问题

在 Linux 系统下&#xff0c;如果你发现使用 pip 下载 Python 库时速度非常慢&#xff0c;可以考虑以下几种方法来加速下载&#xff1a; 使用 pip 的 -i 选项&#xff1a; 如果你只想临时使用其他镜像&#xff0c;可以在安装时加上 -i 选项&#xff1a; pip install package_n…...