一小时搞定Git(含盖IDEA使用)

news2025/1/17 14:00:12

文章目录

  • 1. git基本概念
    • 1.1版本控制
      • 1.1.1 版本控制软件
  • 2. 命令的使用
    • 2.1 Linux命令
    • 2.2 git基础指令
      • 2.2.1 设置用户
      • 2.2.2 初始化本地仓库
      • 2.2.3 查看本地仓库状态
      • 2.2.4 添加暂存区域
      • 2.2.5 提交本地库
      • 2.2.6 切换版本
    • 2.3 分支操作
      • 2.3.1 分支基本操作
      • 2.3.2 合并操作
      • 2.3.4 分支开发规范
  • 3. 远程仓库
    • 3.1 创建远程仓库
    • 3.2 配置SSH公钥
      • 3.2.1 产生公钥
      • 3.2.2 查看公钥
      • 3.2.3 复制公钥到远程仓库
      • 3.2.4 验证公钥
    • 3.3 推送到远程仓库
      • 3.3.1 添加远程仓库
      • 3.3.2 查看远程仓库
      • 3.3.3 推送远程仓库
      • 3.3.4 建立关联
    • 3.4 远程仓库分支操作
      • 3.4.1 推送远程仓库分支
      • 3.4.2 克隆远程仓库
      • 3.4.3 拉取远程仓库
      • 3.4.4 远程仓库分支冲突
  • 4. IDEA中使用git
    • 4.1 在IDEA中配置git

1. git基本概念

1.1版本控制

1.1.1 版本控制软件

版本控制软件分为两种,一种是集中式,另一种是分布式。目前版本控制的主流是git

集中式版本控制软件

  • 软件:SVN/VSS/CVS
  • 优点:管唇人可以轻松掌握每个开发者的权限。
  • 缺点:当中央服务器发生故障了,开发者就无法提交更新,无法进行协同工作。

分布式版本控制软件

  • 软件:Git/Bazaar/Darcs
  • 优点:断网照样可以开发,因为每一个开发者都是完整地项目拷贝

2. 命令的使用

2.1 Linux命令

  1. touch 文件名:创建空白文件

  2. rm 文件名:删除文件

  3. 可以按Tab键自动补全代码

  4. vim 文件名:进入操作界面

    • i插入操作
    • esc
      • :q:无修改保存
      • :wq:保持有并退出
      • q!:不保存并退出
  5. cat文件名:查看文件

  6. 查看文件列表

    1. ll-a(查看全部文件列表)

2.2 git基础指令

2.2.1 设置用户

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

签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码。

**※注意:**这里设置用户签名和将来登录 GitHub(或其他代码托管中心)的账号没有任何关系。

查看配置项

image-20240622200503538

2.2.2 初始化本地仓库

git init

2.2.3 查看本地仓库状态

git status

2.2.4 添加暂存区域

git add 文件名

可以使用git add.表示该文件夹所在的文件全部放到暂存区域

把文件移除暂存区:

git rm --cache 文件名

2.2.5 提交本地库

git commit -m "日志信息" 文件名

查看日志信息:

  • 查看历史日志

    git reflog
    
  • 查看当前日志

    git log
    

2.2.6 切换版本

git reset --hard 版本号

版本号是commit后面的那一串字符串

image-20240622202441274

2.3 分支操作

2.3.1 分支基本操作

创建分支

git branch 分支名

查看分支

git branch -v

切换分支

git checkout 分支名

#切换并创建分支名
git checkout -b 分支名

删除分支

删除时检查:(检查新开发代码是否合并)

git branch -d 分支名

强制删除不做检查:

git branch -D 分支名

**※注意:**删除的时候要到别的分支,再去进行删除操作。

2.3.2 合并操作

正常合并分支

git merge 分支名

冲突合并分支

对同一个文件内容都进行修改了,需要手动修改内容。

2.3.4 分支开发规范

master(主分支)

  • 用于部署生产环境的分支,确保master分支稳定性。
  • 般由develop以及hotfix分支合并,任何时间都不能直接修改代码。

hotfix(修复分支)

  • 线上出现紧急问题时,需要及时修复,以master分支为基线,创建hotfix分支,修复完成后,需需要合并到master分支和develop分支。
  • 命名规则:hotfix/user

develop(开发分支)

  • 始终保持最新完成以及bug修复后的代码。
  • feature分支都是基于develop分支下创建的。

feature(功能分支)

  • 开发新功能时,以develop为基础创建feature分支。
  • 命名规则:feature/user_module

release(预上线或发布分支)

  • 当有一组feature开发完成,首先会合并到develop分支进入测试发布时,会创建release分支。
  • 测试时如果发现BUG,由develop修改BUG后,重新合并。
  • 当测试完成通过之后,合并master分支。

3. 远程仓库

3.1 创建远程仓库

3.2 配置SSH公钥

3.2.1 产生公钥

ssh-keygen -t rsa

3.2.2 查看公钥

cat ~/.ssh/id_rsa.pub

3.2.3 复制公钥到远程仓库

3.2.4 验证公钥

ssh -T git@gitee.com

3.3 推送到远程仓库

3.3.1 添加远程仓库

git remote add origin 仓库地址

3.3.2 查看远程仓库

git remote

3.3.3 推送远程仓库

git push origin master:分支名称

git push origin master:master可以省略最后面的master:

git push origin master

3.3.4 建立关联

git push --set-upstream origin master

git branch -vv (查看关联)

git push (建立好关系后,直接可以推送)

3.4 远程仓库分支操作

3.4.1 推送远程仓库分支

在gitee中创建分支

image-20240623145136788

git相关操作

  • image-20240623145225658

  • image-20240623145240648

  • image-20240623145251396

3.4.2 克隆远程仓库

git clone 仓库路径 本地目录

3.4.3 拉取远程仓库

抓取与合并

  • 抓取命令就是讲仓库里的更新的内容都抓取到本地,但是不会进行合并
  • 如果不能指定远端名称分支名,就会抓取所有的分支
git fetch origin master

拉取命令

  • 拉取命令就是将远端仓库的修改拉到了本地自动进行合并等同于fetch+merge
  • 如果不指定远端名称分支名,就会抓取所有的分支并更新
git pull orgin master

3.4.4 远程仓库分支冲突

如果发生了远程仓库分支冲突,需要pull下来之后进行人工处理

4. IDEA中使用git

4.1 在IDEA中配置git

.gitignore文件说明

image-20240623151932297

之后创建git仓库

image-20240623152201031

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

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

相关文章

C语言| 数组的插入

在下标为index的位置插入一个数字 1 定义数组a&#xff0c;数组b存放插入元素后的数组&#xff0c;下标index 值num 循环变量i 2 输入要插入的位置下标和数值 3 for循环 嵌套if多层语句 if数组的最大下标i < index,说明插入元素的位置在数组中不存在&#xff0c;系统随机分…

Python使用tkinter制作无边框透明时钟源码讲解(tkinter如何实现窗口无边框透明)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 导入必要的库📝 创建主窗口🎯 去掉窗口边框🎯 设置窗口透明度🎯 允许窗口背景透明🎯 设置窗口背景颜色为透明🎯 设置窗口位置🎯 创建用于显示时间的标签📝 更新时间函数📝 使窗口可移动📝…

winRar去广告记录

效果&#xff1a;双击winRar.exe&#xff0c;不会弹出广告窗口&#xff0c;但会弹出使用时间许可警告&#xff0c;效果不是很完美。 工具&#xff1a;everything.exe&#xff08;非必须&#xff09;、sublime text&#xff08;非必须&#xff09;、spyxx.exe&#xff08;非必须…

python-今年第几天

[题目描述] 定义一个结构体变量&#xff08;包括年、月、日&#xff09;。 计算该日在本年中是第几天&#xff0c;注意闰年问题。输入格式&#xff1a; 年 月 日。输出格式&#xff1a; 当年第几天。样例输入 2000 12 31样例输出 366 数据范围 对于100%的数据&#xff0c;保…

啥移动硬盘格式能更好兼容Windows和Mac系统 NTFS格式苹果电脑不能修改 paragon ntfs for mac激活码

对于同时使用Windows和Mac操作系统的用户而言&#xff0c;选择一个既能确保数据互通又能满足大容量存储需求的移动硬盘格式尤为重要。下面我们来看看啥移动硬盘格式能更好兼容Windows和Mac系统&#xff0c;NTFS格式苹果电脑不能修改的相关内容。 一、啥移动硬盘格式能更好兼容…

开源项目推荐-vue2+element+axios 个人财务管理系统

文章目录 financialmanagement项目简介项目特色项目预览卫星的实现方式&#xff1a;首次进入卫星效果的实现方式&#xff1a;卫星跟随鼠标滑动的随机效果实现方式&#xff1a;环境准备项目启动项目部署项目地址 financialmanagement 项目简介 vue2elementaxios 个人财务管理系…

WordPress主题仿虎嗅网/雷锋网自媒体主题(两套打包)

主题介绍 这两款wordpress主题是精仿虎嗅网和雷锋网的&#xff0c;这两款主题应该是没有多大BUG&#xff0c;同时这两款主题目前跟现在的虎嗅、雷锋两个网站看上去并没有多大区别&#xff0c;唯一美中不足的就是不支持PHP7.0以上。经常逛虎嗅网与雷锋网的同志应该是喜欢这两款…

CSS基础学习记录(5)

目录 1、CSS语法 2、实例 3、CSS注释 4、id 选择器 5、class 类选择器 6、标签选择器 7、内联选择器 1、CSS语法 CSS 规则由两个主要的部分构成&#xff1a;选择器&#xff0c;以及一条或多条声明: 选择器&#xff08;Selector&#xff09;通常是您需要改变样式的 HTML …

组合数学、圆排列、离散数学多重集合笔记

自用 如果能帮到您&#xff0c;那也值得高兴 知识点 离散数学经典题目 多重集合组合 补充容斥原理公式 隔板法题目 全排列题目&#xff1a;

找不到msvcr120.dll怎么办,msvcr120.dll丢失的多种解决方法

msvcr120.dll是微软Visual C 2013的可再发行组件包中的一个文件&#xff0c;它是许多程序运行所必需的。这个文件包含了Visual C库&#xff0c;这些库为使用C编写的软件提供支持。如果你的电脑中缺少msvcr120.dll文件&#xff0c;那么依赖这个文件运行的应用程序可能无法启动或…

【Hadoop学习笔记】认识Hadoop

认识Hadoop 从网上找的课程做的笔记&#xff0c;有些图是自己理解画的&#xff0c;可能不正确&#xff0c;可以作为参考&#xff0c;有疑问的地方请直接指出&#xff0c;共同交流。 Hadoop是由Apache基金会开发的一个分布式系统基础架构&#xff0c;主要解决海量数据的存储和海…

干货 | 2024生成式AI产业落地路径研究报告(免费下载)

【1】关注本公众号&#xff0c;转发当前文章到微信朋友圈 【2】私信发送 2024生成式AI产业落地路径研究报告 【3】获取本方案PDF下载链接&#xff0c;直接下载即可。 如需下载本方案PPT/WORD原格式&#xff0c;诚挚邀请您微信扫描以下二维码加入方案驿站知识星球&#xff0c;…

SpringBoot-注解@PropertiySource读取外部属性文件

ConfigurationProperties和Value两个注解能从配置文件中获取数据&#xff0c;但是前面讲了他们是从全局配置文件中获取&#xff0c;且只能从全局配置文件中获取&#xff0c;那么如果是一些数值类的数据放在全局配置文件里&#xff0c;是不怎么合适的&#xff0c;我们往往会把他…

用腾讯云语音合成(TTS)批量生成英语绘本的朗读音频

孩子进行英语启蒙&#xff0c;需要看很多英语绘本&#xff0c;而且要听配套的音频来练听力。但有些英语绘本是没有对应音频的&#xff0c;下面简单几步&#xff0c;就可以将任意英语绘本制作出对应的英语朗读音频。 先到电子书资源网站搜索这个绘本名称&#xff0c;如果有电子…

OGG几何内核开发-复杂装配模型读取、显示、分析

OGG几何内核读取STEP模型文件的API有STEPCAFControl_Reader、STEPControl_Reader。 STEPCAFControl_Reader使用很复杂&#xff0c;但可以展示装配树&#xff0c;有利于模型的详细分析。 本文演示了《插件化算法研究平台V2》的OCC几何模型插件的部分功能&#xff1a;显示装配树…

什么是孪生素数猜想

什么是孪生素数猜想 素数p与素数p2有无穷多对 孪生素数的公式&#xff08;详见百度百科&#xff1a;孪生素数公式&#xff09; 利用素数的判定法则&#xff0c;可以得到以下的结论&#xff1a;“若自然数q与q2都不能被任何不大于的素数 整除&#xff0c;则q与q 2都是素数”…

【Python机器学习】k均值聚类——矢量量化,或者将k均值看作分解

虽然k均值是一种聚类算法&#xff0c;但在k均值和分解方法之间存在一些相似之处。k均值尝试利用簇中心来表示每个数据点&#xff0c;可以看作仅用一个分量来表示每个数据点&#xff0c;该分量由簇中心给出。这种观点将k均值看作是一种分解方法&#xff0c;其中每个点用单一分量…

BUU XXE COURSE 1 1 解题过程

通过使用BurpSuite工具抓包可以得出此题使用的是XML注入。 XML原理 xml是一种类似与html的文本标记语言&#xff0c;与HTML不同的是&#xff0c;xml的作用是传输数据&#xff0c;而不是显示数据。 xml语言是定义一个根元素&#xff0c;下面跟上若干对子元素。 XML DTD 为了规…

fot循环语句

概念&#xff1a; 循环是一种重复执行一段代码的结构&#xff0c;只要满足循环的条件&#xff0c;会一种执行这个代码。 循环条件&#xff1a;在一定范围内&#xff0c;按照指定的次数来执行循环 循环体&#xff1a;在指定的次数内&#xff0c;执行的命令序列。只要条件满足…

程序猿大战Python——面向对象——继承进阶

方法重写 目标&#xff1a;掌握方法的重写。 当父类的同名方法达不到子类的要求&#xff0c;则可以在子类中对方法进行重写。语法&#xff1a; class 父类名(object):def 方法A(self):代码... class 子类名(父类名):def 方法A(self):代码... 例如&#xff0c;一起来完成&…