整合、速通 版本控制器-->Git 的实际应用

news2024/11/21 1:25:37

目录

  • 版本控制器 -- Git
    • 1、Git 和 SVN 的区别
    • 2、Git 的卸载和安装
      • 2-1:Git 卸载
        • 1、先查下原本的Git版本
        • 2、删除环境变量
        • 3、控制面板卸载 Git
      • 2-2:Git 下载安装
        • 1、官网下载
        • 2、详细安装步骤
        • 3、安装成功展示
    • 3、Git 基础知识
      • 3-1:基本的 Linux 命令
        • 1、cd :改变目录
        • 2、pwd:显示当前目录路径
        • 3、clear 清屏
        • 4、ls 列出当前目录中的所有文件,lls 则更为详细
        • 5、touch :新建一个文件
        • 6、rm 删除一个文件
        • 7、mkdir : 新建一个目录(文件夹)
        • 8、rm - r :删除一个文件夹
        • 9、mv :移动文件
        • 10、history 查看历史命令
        • 11、reset 重新初始化终端(和 clear差不多)
        • 12、help 帮助
        • 13、# 表示注释
        • 14、exit 退出
      • 3-2:Git 环境配置
        • 1、查看配置 git config -l
        • 2、查看系统 config
        • 3、查看当前用户(global)配置
        • 4、配置姓名和邮箱:
      • 3-3:Git 的核心理论
        • 1、工作区域
        • 2、工作流程
    • 4、Git 项目搭建
      • 4-1、创建工作目录与常用命令
      • 4-2:本地仓库搭建
        • 1、创建全新的仓库
        • 2、到 gitee 远程仓库克隆代码
    • 5、Git 文件操作
      • 5-1:文件的 4 种状态
      • 5-2:查看文件状态--命令演示
      • 5-3:忽略文件
    • 6、IDEA 集成 Git
      • 6-1、注册 Gitee 码云和添加仓库
      • 6-2、设置本机绑定 SSH 公钥,实现免密码登录
        • 1、在 C 盘生成 .ssh 文件夹(生成 SSH 公钥)
        • 2、将公钥信息 public key 添加到码云账户中即可
        • 3、创建一个远程仓库
        • 4、把远程仓库克隆到本地
      • 6-3、IDEA 开始集成 Git
        • 1、把远程仓库的文件全部拷贝到项目的目录下,那么项目就成功绑定Git了
        • 2、修改文件,使用 IDEA 操作 Git
          • 1、此时的代码,是 commit 到本地仓库的
          • 2、比如我随便创建一个类,那么此时这个类只存在【工作目录】,是【红色】的。
          • 3、然后我右键这个类,选择【add】,就成功把这个类添加到【暂存区】,变成【绿色】
          • 4、然后我再把【暂存区】的 people 类 【commit】到【本地仓库】,变回【黑色】
          • 5、演示修改【暂存区】和【本地仓库】的代码后,颜色的变化
        • 3、通过命令把【本地仓库】的代码 push 推到【远程服务器】
        • 4、通过 IDEA 的功能 push 到远程服务器

版本控制器 – Git

集中版本控制 – SVN
分布式版本控制 – Git

1、Git 和 SVN 的区别

在这里插入图片描述

2、Git 的卸载和安装

2-1:Git 卸载

1、先查下原本的Git版本

在这里插入图片描述
我原本的git版本是 2.41 ,现在想安装最新版本的git。

2、删除环境变量

先把git的环境变量删除掉
在这里插入图片描述

3、控制面板卸载 Git

在这里插入图片描述

2-2:Git 下载安装

1、官网下载

Git 官网

如果官网下载太慢,可以用国内的镜像网站下载。
用小梯子下载也很快。

在这里插入图片描述

2、详细安装步骤

除了修改安装路径,其他都是默认下一步即可。

在这里插入图片描述

在这里插入图片描述

3、安装成功展示

可以看到安装成功了,环境变量里面已经自动添加了 git 的环境变量。

在这里插入图片描述

bin 目录

在这里插入图片描述

桌面右键,可以看到有这两个东西了。

Git Bash :Unix 与 Linux 风格的命令行,使用最多,推荐最多。
Git GUI :图形界面的 Git。

在这里插入图片描述

3、Git 基础知识

3-1:基本的 Linux 命令

1、cd :改变目录

随便在一个文件夹右键打开后,目录就会显示当前位置。

在这里插入图片描述

在这里插入图片描述

2、pwd:显示当前目录路径

在这里插入图片描述

3、clear 清屏
4、ls 列出当前目录中的所有文件,lls 则更为详细

在这里插入图片描述

5、touch :新建一个文件

在当前目录下新建一个文件
在这里插入图片描述

6、rm 删除一个文件

只能删除文件,无法删除文件夹
在这里插入图片描述

7、mkdir : 新建一个目录(文件夹)

在这里插入图片描述

8、rm - r :删除一个文件夹

在这里插入图片描述

9、mv :移动文件

注意点:在操作命令的时候,当前位置是在 workspace 目录下,那么要移动的 test 文件夹和 ljh.js 文件 必须处于同一个目录下(workspace文件夹里面)才能成功。
在这里插入图片描述

测试:
在这里插入图片描述

10、history 查看历史命令

如图,这些命令是很久之前弄的,也显示出来了。
在这里插入图片描述

11、reset 重新初始化终端(和 clear差不多)
12、help 帮助

在这里插入图片描述

13、# 表示注释
14、exit 退出

直接就退出这个 git 软件了。
在这里插入图片描述

3-2:Git 环境配置

1、查看配置 git config -l

在这里插入图片描述

2、查看系统 config

命令:git config --system --list

在这里插入图片描述

3、查看当前用户(global)配置

git config --global --list

在这里插入图片描述

4、配置姓名和邮箱:

Git 安装和基础命令、IDEA 基础操作

3-3:Git 的核心理论

1、工作区域

Git 本地有三个工作区域:
工作目录(Working Directory)、暂存区(Stage / Index)、资源库(本地仓库 --> Repository 或 Git Directory)。
然后再加上远程的 Git 仓库(Remote Directory),就可以算是分为 四个工作区域。

在这里插入图片描述
在这里插入图片描述

如图:本地的三个区域确切的说应该是 git 仓库中 HEAD 指向的版本:
在这里插入图片描述

在这里插入图片描述

2、工作流程

在这里插入图片描述
在这里插入图片描述

4、Git 项目搭建

4-1、创建工作目录与常用命令

工作目录(WorkSpace)一般就是Git帮助我们管理的文件夹,可以是我们自己项目的目录,也可以是一个空目录,建议不要有中文。

日常使用的命令如下:
在这里插入图片描述

4-2:本地仓库搭建

创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库

1、创建全新的仓库

1、创建全新的仓库,需要用GIT管理的项目的根目录执行:

# 在当前目录新建一个Git代码库
$ git init

2、执行后可以看到,仅仅在项目目录多出了一个.git目录,关于版本等的所有信息都在这个目录里面。

在这里插入图片描述

2、到 gitee 远程仓库克隆代码

1、另一种方式是克隆远程目录,由于是将远程服务器上的仓库完全镜像一份至本地!

# 克隆一个项目和它的整个代码历史(版本信息)
$ git clone [url]  # https://gitee.com/lu-jh-jh/my-custom-starter.git

2、去 gitee 或者 github 上克隆一个测试!

在这里插入图片描述

在这里插入图片描述

5、Git 文件操作

5-1:文件的 4 种状态

在这里插入图片描述

5-2:查看文件状态–命令演示

1、我先在 【ljh】 这个文件夹里面初始化一个全新的仓库出来,然后查看 【git status】 查看状态
在这里插入图片描述

2、然后在【ljh】文件夹里面创建一个【hello.txt】文件,接着再看下状态,显示有一个【未跟踪】的文件(untracked files)
在这里插入图片描述

3、然后通过【 git add . 】 命令把【工作目录】的文件提交到【暂存区】,然后就显示有一个未提交的文件。

在这里插入图片描述

4、接着把暂存区的文件通过【git commit -m “备注信息”】提交到本地仓库。

在这里插入图片描述

#查看指定文件状态
git status [filename]

#查看所有文件状态
git status

# git add .                  添加所有文件到暂存区
# git commit -m "消息内容"    提交暂存区中的内容到本地仓库 -m 提交信息

5-3:忽略文件

有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等。

在主目录下建立".gitignore"文件,此文件有如下规则:

忽略文件中的空行或以井号(#)开始的行将会被忽略。

可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,…})代表可选的字符串等。

如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。

如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。

如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。

#为注释
*.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!
!lib.txt     #但lib.txt除外,不会被忽略
/temp        #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/       #忽略build/目录下的所有文件
doc/*.txt    #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

在这里插入图片描述

6、IDEA 集成 Git

6-1、注册 Gitee 码云和添加仓库

添加 gitee 仓库

6-2、设置本机绑定 SSH 公钥,实现免密码登录

(免密码登录,可以在本地电脑把代码 push 到远程仓库的时候可以不用每次都写密码)

如图,我现在是还没弄过 SSH 公钥的。
在这里插入图片描述

1、在 C 盘生成 .ssh 文件夹(生成 SSH 公钥)

一开始我是没有这个【.ssh】文件夹的。
在这里插入图片描述

随便打开一个 bash 命令行界面,输入 : ssh-keygen -t rsa -C “13xxxx6@163.com” ,然后一直点击回车,就会在 c 盘生成这个 【.ssh】文件夹

在这里插入图片描述

如图,【.ssh】里面有这两个文件
在这里插入图片描述

2、将公钥信息 public key 添加到码云账户中即可

在这里插入图片描述
确定后输入密码验证即可

在这里插入图片描述

出现了一条公钥了
在这里插入图片描述

3、创建一个远程仓库

在这里插入图片描述

这样一个远程仓库就创建好了
在这里插入图片描述

4、把远程仓库克隆到本地

我随便创建一个【git_go】的文件夹,然后在该文件夹里面打开这个,
在这里插入图片描述
然后输入如下命令把远程仓库克隆到本地来,命令可以直接在码云复制,如图:

在这里插入图片描述
如图,刚刚新建的仓库已经成功克隆下来了
在这里插入图片描述

为了后续方便和 idea 集成,不用再重新创建springboot项目,我直接在之前的一个项目的目录下,把这个远程仓库拷贝下来了。

在这里插入图片描述

6-3、IDEA 开始集成 Git

基本就是把【工作目录】的代码【add】到【暂存区】,然后再【commit】到【本地仓库】,然后再【push】到【远程仓库】。

1、把远程仓库的文件全部拷贝到项目的目录下,那么项目就成功绑定Git了

在这里插入图片描述

在这里插入图片描述

打开项目看一下,这个文件是红色,表示这个文件此时是选中的状态。
然后项目中,集成了git 的拉取和提交的快捷键。

这样的话,这个项目就成功绑定了 Git 了
在这里插入图片描述

2、修改文件,使用 IDEA 操作 Git

选中文件,然后点击【commit】
在这里插入图片描述

然后弹出的弹框,再次点击 【commit】
在这里插入图片描述

1、此时的代码,是 commit 到本地仓库的

add 是添加到 【暂存区】,commit 是直接把【工作目录】的代码提交到 【本地仓库】,直接跳过 add

此时代码的颜色就变回来了。
在这里插入图片描述

2、比如我随便创建一个类,那么此时这个类只存在【工作目录】,是【红色】的。

在这里插入图片描述

3、然后我右键这个类,选择【add】,就成功把这个类添加到【暂存区】,变成【绿色】

在这里插入图片描述

4、然后我再把【暂存区】的 people 类 【commit】到【本地仓库】,变回【黑色】

在这里插入图片描述

如图,颜色变回黑色了
在这里插入图片描述

5、演示修改【暂存区】和【本地仓库】的代码后,颜色的变化

【本地仓库】的代码,修改后变成【蓝色】;
【暂存区】的代码,修改后没有变化,依然是【绿色】

在这里插入图片描述

3、通过命令把【本地仓库】的代码 push 推到【远程服务器】

此时的仓库啥也没有
在这里插入图片描述

通过 【git push】命令,把代码都推送到远程服务器上面。
如图,push 成功。
在这里插入图片描述

可以看到都 push 到远程仓库了

在这里插入图片描述

4、通过 IDEA 的功能 push 到远程服务器

这是另一篇提交到远程仓库的文章

在这里插入图片描述

后续的切换分支,待更新~~~~~~~~~~~~~~~~~

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

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

相关文章

逆向开发环境准备

JDK安装 AndroidStudio安装 默认sdk路径 C:\Users\Administrator\AppData\Local\Android\Sdk 将platform-tools所在的目录添加到path C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools 主要目的是使用该目录下的adb等命令 将tools所在的目录添加到path C:\Us…

LabVIEW风机跑合监控系统

开发了一种基于LabVIEW的风机跑合监控系统,提高风机测试的效率和安全性。系统通过自动控制风机的启停、实时监控电流和功率数据,并具有过流保护功能,有效减少了人工操作和安全隐患,提升了工业设备测试的自动化和智能化水平。 项目…

解决注册表删除Google报错问题

删除注册表中的Google时报错: 解决方式: 1、右键com.microsoft.browsercore,选择【权限】,在弹出的窗口中点击【高级】 2、可以看到现在的所有者是:TrustedInstaller,点击【更改】 3、点击选择用户和组中的…

东方航空逆向

声明(lianxi a15018601872) 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! …

问题解决|endnote文献手工导入

一、背景介绍 手工导入一篇文献是指手动编辑文献的相关信息Preference。为什么要手动这么麻烦?因为有的文献比较老只有纸质版本,有的文献信息不全,有的则是没有编码无法识别等等,需要手工录入;一般需要手工录入的情况比…

使用gradio搭建私有云ChatGLM3网页客户端

【图书推荐】《ChatGLM3大模型本地化部署、应用开发与微调》-CSDN博客 通过简单的代码领略一下ChatGLM3大模型_chatglm3 history怎么写-CSDN博客 对于一般使用网页端完成部署的用户来说,最少需要准备一个自定义的网页端界面。在网页端界面上,可以设置文…

5.SQL注入-通过union进行获取数据-字符型

通过union进行获取数据-字符型 在pikachu上查询kobe,出现了两个字段id和email 在后台和前端查询是一样的出现数据,也就是有两个字段:id和email 通过sql语句order by 以列的形式排序,没有第三列,所以order by 3 报…

快速将网页封装成APP:小猪APP分发助您一臂之力

你是否曾经有一个绝妙的网页,但苦于无法将其变成手机APP?其实,你并不孤单。越来越多的企业和开发者希望将自己的网站封装成APP,以便更好地接触到移动端用户。我们就来聊聊如何快速将网页封装成APP,并探讨小猪APP分发在…

可燃气体报警器检测机构:严格遵守的安全标准

随着工业、商业和家庭领域对安全要求的不断提高,可燃气体报警器作为预防火灾和爆炸事故的重要设备,其性能稳定性和可靠性越来越受到关注。 可燃气体报警器检测机构应运而生,为确保这些设备的有效运行发挥着不可替代的作用。 接下来&#xf…

Python中的数据结构

一.堆 堆的建立可以通过导入heapq库来实现 在Python中建立的是最小堆 即heap[k]<heap[2*k1]and heap[k]<heap[2*k2] 下面是一些 堆使用的方法 heapq.heappush([],加入的元素) heapq.heappop(heap)弹出最小的元素 heapq.nlargest(3,heap)返回最大的三个元素 hea…

Vue笔记-vue中使用JS创建的函数

主要是公司对前端要求不高&#xff0c;能解决问题就行了&#xff0c;前端不太熟&#xff0c;用js这种处理起来方便&#xff0c;在此记录下。 在src中创建一个api目录&#xff0c;新建custom.js export const getDivHeightByClass (className) > {let divElements docume…

Java面试题--JVM大厂篇之G1 GC的分区管理方式如何减少应用线程的影响

目录 引言: 正文: 1. 区域划分&#xff08;Region&#xff09; 2. 并行和并发回收 3. 区域优先回收&#xff08;Garbage First&#xff09; 4. 可预测的停顿时间 5. 分阶段回收 6. 复制和压缩 实际效果: 场景举例 1. 减少单次GC的影响 2. 支持高并发环境 3. 优…

设计模式-代理模式和装饰者模式

二者都是结构型的设计模式. 1.代理模式 1.1定义 为其他对象提供一种代理以控制对这个对象的访问. 代理从code实现方面分为静态代理和动态代理两种&#xff1b; 从适用范围来看,分为远程代理,虚拟代理,保护代理,智能引用几种. 远程代理:为某个对象在不同的内存地址空间提供…

张小凡砍灵竹

题目 张小凡刚入青云门时&#xff0c;拜入大竹峰田不易门下&#xff0c;师父要求他上山砍灵竹锻炼体力。第一天他砍了1根&#xff0c;之后的九天他分别砍了2&#xff0c;4&#xff0c;5&#xff0c;5&#xff0c;8&#xff0c;7&#xff0c;9&#xff0c;12&#xff0c;2根&am…

【Python】已解决:AttributeError: ‘Series‘ object has no attribute ‘sortlevel‘

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决&#xff1a;AttributeError: ‘Series‘ object has no attribute ‘sortlevel‘ 一、分析问题背景 在数据分析和处理过程中&#xff0c;Pandas库是一个非常强大的工具。它…

Tomcat的安装和虚拟主机和context配置

一、 安装Tomcat 注意&#xff1a;安装 tomcat 前必须先部署JDK 1. 安装JDK 方法1&#xff1a;Oracle JDK 的二进制文件安装 [rootnode5 ~]# mkdir /data [rootnode5 ~]# cd /data/ [rootnode5 data]# rz[rootnode5 data]# ls jdk-8u291-linux-x64.tar.gz [rootnode5 data]…

基于springboot+vue+uniapp的语言课学习系统小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

数据恢复篇:计算机格式化后如何恢复照片

您想了解如何从已格式化的笔记本电脑或台式机中恢复已删除的照片吗&#xff1f;这篇文章解释了如何使用最佳格式照片恢复软件来做到这一点。格式化计算机后&#xff0c;您可以通过简单的步骤恢复已删除的图像。 将照片保存在笔记本电脑或 PC 硬盘上是很常见的。与相机存储卡和…

02-《石莲》

石 莲 石莲&#xff08;学名&#xff1a;Sinocrassula indica A.Berger&#xff09;&#xff0c;别名因地卡&#xff0c;为二年生草本植物&#xff0c;全株无毛&#xff0c;具须根。花茎高15-60厘米&#xff0c;直立&#xff0c;常被微乳头状突起。茎生叶互生&#xff0c;宽倒披…

“吃饭大学”!中国大学食堂排行TOP10(含西电)

同学们们&#xff0c;考研择校考虑的因素除了学术&#xff0c;地理位置等方面&#xff0c;你们还会考虑哪些因素呢&#xff1f;小研作为一个吃货&#xff0c;必定会考虑的一个因素当然是大学的食堂美食啊~ 那中国超级好吃的大学食堂在哪&#xff1f;一起来看看有没有你的目标院…