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

Git介绍--github/gitee/gitlab使用

一、Git的介绍

1.1、学习Git的原因:资源管理

8c6eb74744db4c8a9788a1bab15c96d4.png

1.2、SCM软件的介绍

软件配置管理(SCM)是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件来保证所有配置项的完整性和可跟踪性。配置管理是对工作成果的一种有效保护。

80fa6fc4057246e8875f4470eea9accd.png

二、版本控制软件

集中式版本控制;分布式版本控制;多人协作开发

2.1、版本

1、软件版本

2、文件版本

保存重要的历史记录、恢复数据

2.2、基本功能

1、保存和管理文件

2、提供客户端工具进行访问

3、提供不同版本的比对功能

56f00a57ab6c406abcfd18656c2e5776.png

2.3、集中式版本控制

中央服务器(资源库)出了故障,用户无法上传\下载资源文件

a0142fe754464eb3b900ef1bc1ba7fc5.png

2.4、分布式版本控制

1、优点:中央服务器(资源库)出了故障,本地仓库还在(安全)

2、缺点:依赖于网络网速

dfaa764dec094d0e8718fd6c83d62fc4.png

三、Git和Git客户端的下载安装

3.1、Git

git下载icon-default.png?t=O83Ahttps://git-scm.com/downloads/winb3efd9e587204c1daba828ed7ba0300b.png

安装注意事项

1、修改安装路径

41ac8e48a66e4314a5fc94f10c67dcc1.png

2、推荐使用notepad++

702c8d94c9a9443dac0d1aa196935403.png

notepad++下载icon-default.png?t=O83Ahttps://www.notepad-plus-plus.org/downloads/

d2bab2d0382b479a8ee485c901d9b507.png

3、检验是否安装成功

f105b8ef08a44e6a98c410e733edfa92.png

3.2、Git客户端

git客服端下载icon-default.png?t=O83Ahttps://git-scm.com/downloads/guis

注:需要翻墙,有需要的可以私信我,免费发给你

e6ddcc2737e74148a6ec7221fda40df5.png

https://desktop.github.com/download/

9192285d6a0f426898abb6be1a10912f.png

 四、Git客户端的使用

4.1、注册github/gitee用户

https://github.com/
https://gitee.com/

1、登录Github

4fa3a680dbfa4eda8b3dca88770d9c9d.png

2、确认Git账户

65de250b86b344c48fe5d8efde04ad6e.png

3、更换主题风格

b724c94820c34796a32fd5781231f678.png

 4.2、Git客户端的介绍

1、主界面

0296a9a5511e4f43a9e35bb9934b60d7.png

2、创建一个仓库

046db102482f4862af404c10bbdaed5a.png

3、打开仓库后的主界面

6a2de7ad19c047caaebb91bf3bd8510a.png

4、删除仓库

29bcb8dfd2ee4f82bf9db6b7de1310e5.png

5、从本地导入一个仓库

e31bddf210cc4e6ba07191b46e3b9a23.png

4.3、原理图

b956b98a16e44d50adccf2f7fe673cdc.png

4.4、版本号

版本号作用:合并时避免冲突;定位仓库中文件的位置

1、查看版本号

a354b62bc5da48b484706804aedaec5e.png

2、定位版本号位置

41ac098ef52e45198e4dae9b5469143e.png

3、利用Git Bush here查看文件内容

右键-->Git Bush here

444333e555d843f3acfdfad6df3fe6a0.png

4、增加、修改、删除操作

e23cc48a7aa04774882286f42ff24784.png

32e11453f59544f0a58a30b0977fccc2.png

5、忽略文件

de8e99c2d620455c8cebfabca922e8a8.png

104fed7ce1e1403eb1aeb04dd7a607a0.png

 6、加入分支后的文件信息

ba9e20d6b6ce43d88bf941d237bf7a59.png

4.5、分支

1、创建分支、修改分支名、合并分支

7fe85af35b9a4419b91605d18dd63e52.png

2、处理冲突

3dd62b757c8942e49fa00dbc0a16ec2d.png

3、创建标签

c525dabe093f44a7a6d2bbfd728a7066.png

五、Github\Gitee的介绍和使用

5.1、Github的使用(与客户端的使用基本一致)

1、创建一个仓库

285ecf67310e4b68a57e301f75941243.png

ce93b14b23744ca3aa53ad61daa85e96.png

2、主界面;创建分支、标签;新增文件;删除仓库

6d7c10ac44cc445a9288cbfbf64a48d1.png

3、从Github中克隆远程仓库到本地客户端

60b5050a7d6b4b82b9d264b167574ba3.png

5.2、Github的使用(中文版的Github)

1、与Github的使用基本一致

但会比Github快,应该Github是外网,Gitee是内网

3aeec9f95e454d4a96baa6aced1e655b.png

2、主界面;创建分支、标签;新增文件;删除仓库

a581f7743c684de580d5430eb8bb1e2c.png

3、从Gitee中克隆远程仓库到本地客户端

1a38876c68d842dbbef2322a586899f5.png

六、IDEA集成Git

6.1、检查是否需要更新

f498c008a9354600940c900e0adf1890.png

6.2、已有Github插件;下载Gitee插件

055dd593a9f4423fa9f909364e056a8f.png

6.3、推送到远程仓库

1、Github授权IDEA登录,在Github上共享文件

f713056cb785424dada73431629b7b0c.png

c456f1bea6ec4e5da62275e82f761342.png

aba855b65e444d8f840966b1f9cf53d6.png

2、Gitee授权IDEA登录,在Gitee上共享文件

75616cf378d94b42855c06e6eb1e24dc.png

aa5ffa2edf1b4b9cb3602536236f2737.png

89c49d20a647442da54c7209ae294bfa.png

注:也可在创建项目的同时创建Git仓库

f84e61ec967c4321a53526b70373f448.png

6.4、在IDEA中操作Git基本操作 

4054a1f7f90447d7b2c52196a1fa93c9.png

七、Git命令

892842ec0f0e4f0d956117206678daff.jpeg

7.1、仓库操作

1、创建仓库 

git init

f1d78e05b7b4456a8b1309465129b7ca.png

2、克隆仓库

git clone http网址

d0acfd883b2d4b77a94bd52cf8c059a9.png3、配置仓库

1)局部配置

git config user.name 用户名
git config user.email 邮箱

f70f4ef8187a410caa1647eb2aa69d5c.png

2)全局配置 

git config --global user.name 用户名
git config --global user.email 邮箱

0bcb3b67aff142fba58739726698d108.png

  7.2、文件操作

1fa66c4097ed451f9ae85c8cfac0ac30.png

1、查看当前状态

git status

169c80a60d75477db8fadd7b30ec9b2f.png

2、增加文件到“暂存区”

git add a.txt
git add *.txt

 59767aca64ee4f1c8bc29a2bca5109b8.png

3、移动文件到“工作区”

git rm --cached a.txt

b0ef28fb5237459598b1c17b970d59da.png

4、提交文件到“存储区”(增删改都是提交文件-与客户端的操作相似)

git commit -m 提交信息

e6c8385e23df4d54a146f561c99a50be.png

5、查看历史提交记录

git log --oneline

7b59c449ec994ac6beeb0394f88023b0.png

6、误删文件,回复操作

git add a.txt
git commit a.txt
....手动删除a.txt文件
git restore a.txt

4727ddb881614d8f9c4535a8c59dd154.png

git add a.txt
git commit a.txt
....手动删除a.txt文件
git add a.txt
git commit a.txt
...即最新版本库的a.txt也被删除
#不能用git restore a.txt
git log --onelinegit reset -hard a.txt的版本号
(此操作会回到a.txt提交的时候)
git revert a.txt的下一个提交的版本号
(此操作会再重新提交一次a.txt)

178ef10d3d154766b2d6759dbdfea7f0.pngb1fc11d63e524aee9781a47b5e9d9db9.png

7.3、分支操作

1、创建分支前,master必须有文件信息,不然会报错

7ba12e6ebeed460b963846731241e765.jpeg

2、创建分支

git branch 新分支名

fcd9ee11e90543de9397b618dff4956c.jpeg

3、切换分支

git checkout 要切换到的分支名

279b57ec7c9e4c7082f52556f4eb08b3.jpeg

4、创建并切换分支

git checkout -b 分支名

34c7b545cb8648f7ba5584fdf575a679.jpeg

5、删除分支

git branch -b 分支名

81527b357fb641439f4989de84395c5e.jpeg

7.4、分支和并出现冲突

1536fa7d8aef417b91f3dbedd3efa285.jpeg

e7f1e2ef826e46f0abe2460fd6ab0ec8.jpeg

1、分支的合并

git merge 分支名

0a2042daf2be4784a9cab381e87184a4.png

2、冲突的处理

b37166912047444b87aa6c9bfd74104c.png

7.5、标签操作

74b55ada41ff4dc2aae5ee53d85b99c5.png

1、显示某个文件信息

git log 版本号

23626eaec956434db2058c72a9d8a67f.png

2、创建标签,显示标签,利用标签显示文件

# 创建标签
git tag 标签名 文件版本号
# 显示标签
git tag
# 利用标签显示文件
git log 标签名

f0dee65ec61a4ce0a3b82a2d0ef84a3c.jpeg

84aca808ef404077863d092cc06c4995.jpeg

2、删除标签

git tag -d 标签名

913278d7b99e493daf238906d2f2243b.jpeg

3、利用标签名创建分支

git checkout -b 标签名

59bf1c998c2f47fbbe74710d48f863f5.jpeg

7.6、远程仓库操作

1、修改配置

38dedd0782f4434f883819f41911047b.png

2、需要提供安全认证

f168cb5d5c2a49b9a9d4b3e1ba359fcc.png

ssh-keygen -t rsa -C'SSH地址'

公钥位置(默认) 

f74b60c416744614b97902decd32d54e.png

266374da60944fd8bfffef546f68a41f.png

b47fb5e9a7d340049fe7ab06d265c63c.png

3、推送到远程仓库

git push 远程仓库名

4、拉取文件

git pull 远程仓库名

八、GitLab 

搭建自己的代码托管平台(linux环境)

gitlab网址icon-default.png?t=O83Ahttps://about.gitlab.com/

相关文章:

Git介绍--github/gitee/gitlab使用

一、Git的介绍 1.1、学习Git的原因:资源管理 1.2、SCM软件的介绍 软件配置管理(SCM)是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件来保证所有配置项的完整性和可跟踪性。配置管理是对工作成果的一种有效保护。 二、版本控制软件 …...

【ubuntu】【VirtualBox】VirtualBox无法加载USB移动设备的解决方法(支持U盘启动盘)

TOC 提示:测试可用 一、安装VirtualBox VirtualBox-7.1.2-164945-Win。 下载路径。 Download_Old_Builds_7_0 – Oracle VirtualBox 二、安装Oracle_VirtualBox_Extension_Pack-7.1.2 下载路径见上文。 三、安装增强功能 四、挂载USB 4.1 设置USB协议 4.2 挂…...

Koa2+mongodb项目实战1(项目搭建)

前言 在正式开始之前,需要先知道用到的东西: koa:Koa 是一个基于 Node.js 的 Web 应用框架,非常适合开发API服务,可以与前端框架(如 Vue.js、React.js)结合使用,实现前后端分离的开…...

Pyhton爬虫使用Selenium实现浏览器自动化操作抓取网页

第三方库Selenium主要是用来抓取动态生成的网页数据,有些网站的内容要下拉网页才会动态加载,特别是那些使用javaScript渲染的内容。当然Selenium还可用于自动化浏览器操作,比如编写一个自动抢火车票的python脚本,这并不难实现。接…...

矩阵学习过程中的一些思考

2024.09.27(学习鸢尾花书_矩阵力量_Ch20) (1)所有中心过原点的椭圆都可以用一个二维矩阵表示,且特征值表示长短轴长度,特征向量表示长短轴所在方向的单位向量(表征椭圆旋转方向)&am…...

初识Django

前言: 各位观众老爷们好,最近几个月都没怎么更新,主要是最近的事情太多了,我也在继续学习Django框架,之前还参加了一些比赛,现在我会开始持续更新Django的学习,这个过程会比较久,我会把我学习的…...

VirtualBox虚拟机连接宿主机并能够上网(小白向)

现存问题 windows系统主要使用vmare和virtualbox两种虚拟机,virtualbox相对于vmare更加轻便,但少有博客能够详细说明使用virtualbox的教程。踩了网上的坑后,决定写一篇文章介绍virtualbox虚拟机上网的流程。 需求 1. virtualbox虚拟机与宿主机…...

深度学习每周学习总结J1(ResNet-50算法实战与解析 - 鸟类识别)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结1. 设置GPU2. 导入数据及处理部分3. 划分数据集4. 模型构建部分5. 设置超参数:定义损失函数,学习率&a…...

商家营销工具架构升级总结

今年以来,商家营销工具业务需求井喷,需求数量多且耗时都比较长,技术侧面临很大的压力。因此这篇文章主要讨论营销工具前端要如何应对这样大规模的业务需求。 问题拆解 我们核心面对的问题主要如下: 1. 人力有限 我们除了要支撑存量…...

移动硬盘无法读取:问题解析与高效数据恢复实战

一、移动硬盘无法读取的困扰 在数字化时代,移动硬盘作为数据存储和传输的重要媒介,承载着大量珍贵的数据资源。然而,当移动硬盘突然无法读取时,我们往往会陷入深深的困扰之中。这种无法读取的现象可能表现为插入电脑后毫无反应、…...

20241005给荣品RD-RK3588-AHD开发板刷Rockchip原厂的Android12时使用iperf3测网速

20241005给荣品RD-RK3588-AHD开发板刷Rockchip原厂的Android12时使用iperf3测网速 2024/10/5 14:06 对于荣品RD-RK3588-AHD开发板,eth1位置上的PCIE转RJ458的以太网卡是默认好用的! PCIE TO RJ45:RTL8111HS 被识别成为eth0了。inet addr:192.…...

node配置swagger

安装swagger npm install swagger-jsdoc swagger-ui-express 创建 swagger.js 配置文件 ​ const path require(path); const express require(express); const swaggerUI require(swagger-ui-express); const swaggerJsDoc require(swagger-jsdoc); // 修改 swaggerDoc…...

MATLAB plot画线的颜色 形状

文章目录 前言一、MATLAB plot画线的颜色 形状?颜色选项标记选项示例代码详细说明 总结 前言 提示:这里可以添加本文要记录的大概内容: 项目需要: 提示:以下是本篇文章正文内容,下面案例可供参考 一、MA…...

Goland使用SSH远程Linux进行断点调试 (兼容私有库)

① 前置需求 ssh远程的 Linux 服务器必须安装 高于本地的 Go推荐golang 安装方式使用 apt yum snap 等系统自管理方式,(要安装最新版本的可以找找第三方源),如无特殊需求不要自行编译安装golang ② Goland设置 2.1、设置项处理…...

LLM | Ollama WebUI 安装使用(pip 版)

Open WebUI (Formerly Ollama WebUI) 也可以通过 docker 来安装使用 1. 详细步骤 1.1 安装 Open WebUI # 官方建议使用 python3.11(2024.09.27),conda 的使用参考其他文章 conda create -n open-webui python3.11 conda activate open-web…...

Three.js基础内容(一)

目录 一、几何体顶点和模型 1.1、点模型对象(Points)渲染顶点数据 1.2、线模型(Line)渲染顶点数据(画个心) 1.3、网格模型(Mesh)渲染顶点数据(三角形概念) 1.4、构建一个矩形平面几何体 1.5、几何顶点索引数据 1.6、顶点法线数据 1.7、查看three…...

网站建设制作需要注意

网站建设制作不仅仅是简单的技术活,更是一个企业或个人在互联网上展示自己形象和实力的重要手段。本文将探讨网站建设制作的重要性、步骤和关键要素。 1. 网站建设的重要性 1.1 品牌形象与宣传 一个精心设计的网站能够突显企业或个人的品牌形象,传递清晰…...

【Python】Uvicorn:Python 异步 ASGI 服务器详解

Uvicorn 是一个为 Python 设计的 ASGI(异步服务器网关接口)Web 服务器。它填补了 Python 在异步框架中缺乏一个最小化低层次服务器/应用接口的空白。Uvicorn 支持 HTTP/1.1 和 WebSockets,是构建现代异步Web应用的强大工具。 ⭕️宇宙起点 &a…...

类型转换【C++提升】(隐式转换、显式转换、自定义转换、转换构造函数、转换运算符重载......你想知道的全都有)

更多精彩内容..... 🎉❤️播主の主页✨😘 Stark、-CSDN博客 本文所在专栏: C系列语法知识_Stark、的博客-CSDN博客 座右铭:梦想是一盏明灯,照亮我们前行的路,无论风雨多大,我们都要坚持不懈。 一…...

微信小程序hbuilderx+uniapp+Android 新农村综合风貌旅游展示平台

目录 项目介绍支持以下技术栈:具体实现截图HBuilderXuniappmysql数据库与主流编程语言java类核心代码部分展示登录的业务流程的顺序是:数据库设计性能分析操作可行性技术可行性系统安全性数据完整性软件测试详细视频演示源码获取方式 项目介绍 小程序端…...

接口测试中缓存处理策略

在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

深度学习习题2

1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...

Go语言多线程问题

打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构: 传统SMO中LPF会带来相位延迟和幅值衰减,并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF),可以去除高次谐波,并且不用相位补偿就可以获得一个误差较小的转子位…...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态

前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...