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

目录

  • 版本控制器 -- 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 到远程服务器

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

在这里插入图片描述

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

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

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

相关文章

通俗易懂的chatgpg的原理简介

目录 一、深度学习与语言模型 二、ChatGPT训练三步走 三、情景学习与思维链 四、修改提示语优化结果 五、能力评估和注意问题 六.算法原理 简介: ChatGPT的人工智能原理主要基于深度学习技术,特别是大规模的预训练语言模型和Transformer结构。Cha…

SpringCloud_Eureka注册中心

概述 Eureka是SpringCloud的注册中心。 是一款基于REST的服务治理框架,用于实现微服务架构中的服务发现和负载均衡。 在Eureka体系中,有两种角色: 服务提供者和服务消费者。 服务提供者将自己注册到Eureka服务器,服务消费者从Eureka服务器中…

使用Qt制作一个简单的界面

1、创建工程 步骤一: 步骤二: 步骤三: 选择 build system,有qmake、CMake 和 Qbs 三个选项。 CMake 很常用,功能也很强大,许多知名的项目都是用它,比如 OpenCV 和 VTK,但它的语法繁…

【Android面试八股文】什么是ANR?如何分析和定位ANR?如何避免ANR?

文章目录 一、ANR概述二、触发ANR的主要场景三、Android四大组件中的潜在的ANR风险五、避免ANR的实践建议六、ANR的产生原因与出现的场景6.1 原因:6.2 出现场景:七、ANR的定位与分析7.1. ANR分析思路——traces7.2 ANR其他分析思路与相关日志7.2.1 分析logcat思路7.2.2 分析k…

Spring Cloud Circuit Breaker基础入门与服务熔断

官网地址&#xff1a;https://spring.io/projects/spring-cloud-circuitbreaker#overview 本文SpringCloud版本为&#xff1a; <spring.boot.version>3.1.7</spring.boot.version> <spring.cloud.version>2022.0.4</spring.cloud.version>【1】Circu…

易校网校园综合跑腿小程序源码修复运营版

简介&#xff1a; 易校网校园综合跑腿小程序源码修复运营版&#xff0c;带服务端客户端前端文档说明。 源码安装方法&#xff1a; 需要准备小程序服务号 服务器 备案域名 校园网跑腿小程序源码需要准备 1.小程序 2.服务器&#xff08;推荐配置2h4g3m&#xff09; 3.域名…

【Python实战因果推断】13_线性回归的不合理效果3

目录 Regression Theory Single Variable Linear Regression Multivariate Linear Regression Frisch-Waugh-Lovell Theorem and Orthogonalization Regression Theory 我不打算太深入地探讨线性回归是如何构建和估计的。不过&#xff0c;一点点理论知识将有助于解释线性回归…

更新!谷歌倾斜摄影OSGB数据V1.2版

谷歌倾斜摄影OSGB数据V1.2版终于来了&#xff01; 一个月前发布了谷歌倾斜摄影数据生成OSGB数据V1.0版&#xff0c;对谷歌倾斜摄影数据转换工具进行了重大更新&#xff0c;V1.1版主要解决了三个问题&#xff1a;1.支持Cesiumlab等数据处理软件&#xff0c;将OSGB数据转换成3DTi…

OFDM关键技术——PAPR降低技术

OFDM信号的峰均比问题 PAR问题由于不同子载波上N个正弦信号叠加引起&#xff0c;由于各个子载波的幅值和相位相互独立&#xff0c;当子载波数目较大时&#xff0c;由中心极限定理可知&#xff0c;同相分量的幅度服从高斯分布。 峰值功率&#xff1a;0.1033 平均功率&am…

网安小贴士(4)哈希函数

一、前言 哈希函数是密码学中的基础工具&#xff0c;哈希函数在密码学中扮演着至关重要的角色&#xff0c;广泛应用于确保数据的安全性和完整性。随着技术的发展&#xff0c;新的哈希算法和应用场景也在不断出现。 二、定义 哈希函数是一种数学函数&#xff0c;它接受一个输…

计算机I/O系统与外围设备详解:从基础概念到实际应用

计算机I/O系统与外围设备详解&#xff1a;从基础概念到实际应用 在计算机世界中&#xff0c;理解I/O系统和外围设备的基本概念对初学者来说至关重要。本文将详细介绍I/O系统的基础知识、I/O接口、计算机外围设备及其工作原理&#xff0c;帮助基础小白更好地理解这些概念。 I/O…

毫米波雷达深度学习技术-1.7训练一个神经网络

1.7 训练一个神经网络 对于训练神经网络&#xff0c;有两个步骤&#xff0c;即前向传递和误差反向传播。 1.7.1 前向传播和反向传播 在前向传递中&#xff0c;输入被馈送到模型并与权重向量相乘&#xff0c;并为每一层添加偏差以计算模型的输出。密集层或全连接层第l层的输入、…

中画幅巡检相机-SHARE 100M A10

【毫厘之间&#xff0c;洞见非凡】 ——SHARE 100M A10中画幅测量相机&#xff0c;巡检行业的新选择 在巡检行业&#xff0c;精准度是关键&#xff0c;深圳赛尔智控科技有限公司最新推出的SHARE 100M A10中画幅测量相机&#xff0c;基于先进的IMX461影像传感器&#xff0c;拥有…

prometheus 安装node_exporter, node_exporter 安装最新版 普罗米修思安装监控服务器client

1. 本文介绍两种安装方式&#xff0c;一种安装为service,使用systemctl start node_exporter管理&#xff0c;第二种为安装docker内 容器内使用。 1.1 安装到系统内&#xff1a; 1.1.1 github地址&#xff1a; Releases prometheus/node_exporter GitHub ​ 1.1.2 下载命…

解析Linux top 命令输出并生成动态图表

文章目录 0. 引言1. 原理2. 功能3. 程序架构流程图结构图 4. 数据解析模块5. 图表绘制模块6. 主程序入口7. 使用方法8. 总结9. 附录完整代码 0. 引言 在性能调优和系统监控中&#xff0c;top 命令是一种重要工具&#xff0c;提供了实时的系统状态信息&#xff0c;如 CPU 使用率…

PHP电商系统开发指南高级技巧

开发高级 php 电商系统所需的技巧包括&#xff1a;数据库优化&#xff1a;使用索引、规范化数据结构和缓存机制。性能优化&#xff1a;启用页面缓存、优化图像和使用 cdn。购物车管理&#xff1a;使用会话或数据库存储数据&#xff0c;实现实时更新和弃单恢复。支付集成&#x…

windows10如何打开开发者模式

按键盘上的win键或者点击屏幕左下角的开始图标&#xff0c;即可出现如下的界面 在打开的界面中找到设置按钮&#xff0c;点击设置按钮 进入windows设置界面后&#xff0c;找到‘更新和安全’的选项&#xff0c;随后点击进入 进去后在左侧的功能列表中找到‘开发者选…

Transformer模型原理细节解析

基本原理: Transformer 的核心概念是 自注意力机制(Self-Attention Mechanism),它允许模型在处理每个输入时“关注”输入序列的不同部分。这种机制让模型能够理解每个单词或符号与其他单词或符号之间的关系,而不是逐个地线性处理输入。 Transformer 主要由两个部分组成:…

推荐算法学习笔记2.1:基于深度学习的推荐算法-基于共线矩阵的深度推荐算法-AutoRec模型

AutoRec模型 前置知识&#xff1a;推荐算法学习笔记1.1:传统推荐算法-协同过滤算法 AutoRec模型通过引入自编码器结构&#xff0c;将共线矩阵中的用户向量&#xff08;基于用户的U-AutoRec&#xff09;或物品向量&#xff08;基于物品的I-AutoRec&#xff09;嵌入到低维空间后还…

Ubuntu24.04LTS基础软件下载

librewolf: deb文件link 作用&#xff1a;访问github&#xff0c;无痕浏览&#xff0c;这个速度&#xff0c;不指望了 vscodium: 从deb安装&#xff0c;ubuntu sudo dpkg -i xxx.debpaste-image 插件替代 markdown wps: libreoffice: 替换USTC源 sudo nano /etc/apt/sourc…