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

2024-06-24 02:04

本文主要是介绍一小时搞定Git(含盖IDEA使用),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 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 mastergit 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

这篇关于一小时搞定Git(含盖IDEA使用)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1088881

相关文章

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完