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

Git详细介绍

听了b站上瑞吉外卖这个课程,对Git的总结

目录

快速入门

Git概述

Git代码托管服务

常用的Git代码托管服务

使用码云代码托管服务

Git常用命令

Git全局设置

获取Git仓库

工作区、暂存区、版本库概念

Git工作区中文件的状态

本地仓库操作

远程仓库操作

分支操作

分支合并时冲突解决

标签操作

在IDEA中使用Git

在IDEA中配置Git

获取Git仓库

.gitignore文件

本地仓库操作

远程仓库操作

分支操作


快速入门

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

演示:(假如a,b两人同时开发同一个项目,如下图,a配置完之后点击菜栏中绿色的对号,b点击向下的箭头就会出现a配置的)

Git概述

Git代码托管服务

远程仓库如何创建如何管理,其实是通过Git代码托管服务来实现的。

常用的Git代码托管服务

使用码云代码托管服务

新建仓库:

邀请别人一起来维护这个仓库:点开仓库——>管理——>仓库成员管理

Git常用命令

Git全局设置

设置用户名名称和email地址,前两条是设置这个,第三条是查看配置信息

获取Git仓库

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

获取Git仓库通常有两种方式:
1、在本地初始化一个Git仓库。(不常用)

就会在repo1中创建一个隐藏的文件夹:查看——>显示

2、从远程仓库克隆(常用)(注意在哪个目录下执行,因为仓库不能嵌套)

工作区、暂存区、版本库概念

Git工作区中文件的状态

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

1、untracked 未跟踪(未被纳入版本控制)

2、tracked 已跟踪(被纳入版本控制)

1)Unmodified 未修改状态

2)Modified 已修改状态

3)Staged 已暂停状态

举例说明:(假如现在在hellogit工作目录下创建一个user.java的文本文档)

然后在git中查看状态:(未被跟踪)

然后执行git add <file>命令,就变成了已暂存状态:

本地仓库操作

提交:

提交之后又打开user.java文本文档修改了:

提交修改后的user.java文本文档,查看状态,查看日志:

查看日志的commit后面跟的是版本号:(表示回到还没有修改user.java文本文档的版本,此时再打开user.java文本文档什么都没有,相当于回溯到之前的状态)

远程仓库操作

查看远程仓库:(因为hellogit是从远程仓库克隆的,而repo1是本地初始化的仓库)(一般来讲origin是仓库的简称是一种习惯)

给本地仓库添加一个远程仓库:

首先我又在gitee中创建了一个repo1仓库,并且点击初始化readme文件了,然后克隆之后给它里面新建了test.txt文本,并且里面随便写了一些东西。

如下,是提交到了本地仓库,远程仓库还没有提交。(注意:要先提交本地仓库才能提交到远程仓库)

提交远程仓库:(git push命令)

然后刷新一下你的仓库页面:

从远程仓库拉取(git pull origin master):

a和b处理同一个项目,然后a把项目的一个xml文件修改了,这时a就会先把这个文件提交到本地仓库,然后再推送到远程仓库,b从远程仓库拉取就可以了。

注意点:

如下本地初始化的仓库helloworld:(存在自己创建的test.txt文本文档,这时再从远程仓库拉取就会报错)

分支操作

查看分支:

代码示例:

切换分支:

把b1分支推送到远程仓库:

注意,假如再master分支下创建了一个user.txt文本文档,那么git切换到b1分支就没有这个user.txt文本文档因为他是master分支下的,但是如果又切换回master分支他就又会显示user.txt文本文档。很神奇,也可以在b1分支下设置与master不同的b1.txt文本文档,只有在git切换到b1分支下才会展示它,因为它属于b1而不属于master。

合并分支:

把b1分支合并到master:

分支合并时冲突解决

如果同时在master与b1分支下来修改b1.txt文本,然后再合并的时候就会出现问题。

假如现在我修改了master分支下的之前合并b1分支的b1.txt这个文本,同时也修改了b1分支下的b1.txt文本,并且把他们两个分别提交到本地仓库之后再提交到远程仓库,可以发现两个分支下的b1.txt文本不一样(也就是它们两个分支并没有一个分支改这个文本,另一个分支跟着改;而是说两个互不干涉),于是现在想到再执行合并分支的操作,但是会报错,如下:

解决方法:

1、手动改master中的b1.txt文本,把两个分支都改的内容都加进去。

2、

3、只要出现上面那个报错的问题,都在代码后面加上-i就解决了

4、上传远程仓库:(只有master这个分支下的b1.txt是手动改的内容;b1分支下还是他原来的内容)

标签操作

举例:

这个v0.1标签记录的是如下状态:

并且在gitee上也会出现这个标签:

1、假如我又创建了一个abc.txt文本,然后执行如下代码:

2、然后检出标签(检出标签需要新建一个分支来指向某个标签),分支名叫什么都可以,随便,比如我们就叫b0.1

文件夹内容:

在IDEA中使用Git

在IDEA中配置Git

配置如下图的路径。

获取Git仓库

1、本地初始化仓库。

菜单——>VCS——>创建Git仓库...——>选这个项目的文件夹——>确定。

gitdemo这个项目目录就变成了仓库目录,可以看见多了个隐藏文件夹.git(等价于在这个目录下执行了git init命令)

执行完之后在最上面菜单中出现了:

2、从远程仓库克隆。

如下图URL地址其实就是远程仓库的地址。目录要改一下,改成当前项目的目录。

.gitignore文件

是git仓库中特有的文件,定义当前仓库(项目)下哪些文件不需要git管理。

本地仓库操作

1、将文件加入暂存区。

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

3、查看日志

如下仓库(项目)就是克隆远程仓库而来的:

现在要创建一个在controller包下创建一个类,创建的时候会弹出如下对话框:(点击Add,就相当于git add <file>这个命令,加入了暂存区)

如果说点错了点成取消

提交到版本库:

鼠标右键要提交的类——>git——>提交

远程仓库操作

查看与添加远程仓库:

上图中+是添加远程仓库,-是删除

推送远程仓库:也是鼠标右键——>git——>推送。或者直接在菜单中推送。

从远程仓库拉取:也是鼠标右键——>git——>拉取。或者直接在菜单中拉取。

分支操作

查看分支:右键——>git——>分支。或者最上面菜单中有master点击那里也能看到

创建分支:右键——>git——>新建分支.或者最上面菜单中有master点击那里也能创建(签出分支:创建之后直接切换到新建的分支)

切换分支:菜单上面的b1——>master——>签出

将分支推送到远程仓库:菜单上面的b1——>推送——>弹出窗口点击推送

合并分支:假如在b1中新创建了一个类,而master分支中没有,那么切换到master分支中,点击菜单上面的master——>点击b1——>合并到当前分支。然后master就有b1分支中新建的类了。

http://www.dtcms.com/a/393065.html

相关文章:

  • 大话计算机网络(上)
  • JVM方法调用机制深度解析:从aload_1到invokevirtual的完整旅程
  • STM32CubeIDE学习——安装
  • 追觅宣布进军手机市场,已经白热化的手机赛道追觅优势何在?
  • AI智能体开发工作流的成功案例分享及思路
  • 【算法基础】String、Hash 与 Stack
  • 使用springboot开发一个宿舍管理系统练习项目
  • 像素版推箱子游戏
  • 2025年CSP-J认证 普及组初赛真题解析 CCF信息学奥赛C++ 中小学初级组 第一轮真题-选择题解析
  • 【精品资料鉴赏】121页可编辑PPT详解医药集团合规管控规划方案
  • Linux用户权限与进程管理深度解析
  • [数据结构] 反射,枚举与lambda表达式
  • 奇异值:数据科学的数学基石与应用核心
  • Python 2025:安全编程与漏洞防范实战指南
  • ​​[硬件电路-286]:高速轨到轨比较器TLV3603DCKR 功能概述与管脚定义
  • CAR 细胞疗法:破解自身免疫性疾病的 “免疫纠错” 新路径
  • FreeRTOS实战指南 — 5 多任务系统实现流程
  • `css`使单词保持连贯的两种方法
  • 【Vue3 ✨】Vue3 入门之旅 · 第三篇:模板语法与数据绑定
  • 分类预测 | Matlab实现PCA-BP主成分分析结合BP神经网络多特征分类预测
  • 【Linux】进程优先级切换调度
  • Ubuntu24上安装Scrapy框架实战
  • 正向shell,反弹shell学习
  • 一维数组原地更新——力扣119.杨辉三角形II
  • Python语法学习-1
  • Linux基础命令大全
  • 9.21 快速选择
  • 【常见集合】HashMap
  • Docker安装小白教程(阿里yum)
  • MySQL表结构变更详解:ALTER TABLE ADD COLUMN语法、最佳实践与避坑指南