【Git-IDEA】在 IDEA 中使用 Git(clone、pull、push、merge、建立本地分支与远程分支的连接)

【Git-IDEA】在 IDEA 中使用 Git(clone、pull、push、merge、建立本地分支与远程分支的连接)

  • 1)Gitee
  • 2)配置 Git
  • 3)初始化本地仓库
  • 4)连接远程仓库
  • 5)clone
    • 5.1.方式一
    • 5.2.方式二
  • 6)分支操作
    • 6.1.新建分支
    • 6.2.删除分支
    • 6.3.合并分支
  • 7)推送代码到远程仓库
    • 7.1.commit
    • 7.2.push
  • 8)拉取或更新远程代码到本地仓库
    • 8.1.pull
    • 8.2.建立本地分支与远程分支的连接
  • 9)常用快捷键
  • 10)总结

Git 安装步骤请参考:【Git-Git的安装了解与使用】了解Git & 安装Git & 使用Git

需求描述:

1、使用 Gitee 作为远程仓库进行测试

2、使用 idea-Git 进行 clone

3、使用 idea 创建 Git 分支,并建立本地分支与远程分支的连接

4、使用 idea-Git 进行 pull、push

5、使用 idea-Git 进行 merge

1)Gitee

使用 Gitee 作为远程仓库进行测试

Gitee 官网地址

1、创建仓库

在这里插入图片描述

简单选择一些属性后创建

在这里插入图片描述

2、进入仓库

在这里插入图片描述

3、仓库地址

在这里插入图片描述

2)配置 Git

在这里插入图片描述

3)初始化本地仓库

1、创建完远程仓库之后,还要通过 IDEA 开发工具来初始化一个本地仓库,相比于 Git Bash 这样的命令行来说,IDEA 非常方便可以进行可视化的 Git 管理。

在这里插入图片描述

2、点击 Create Git Repository 之后,弹出一个小窗口,选择要初始化的本地项目。

在这里插入图片描述

4)连接远程仓库

1、初始化本地仓库,并且创建完远程仓库项目之后,下一步就需要将本地和远程进行对接交互了。那么在交互之前,肯定是要进行建立连接的,就像打电话之前先呼号建立通话连接一样,之后再进行信息交换。

在这里插入图片描述

2、添加 Remote,输入 Name 和 URL,这里的 Name 如果没有特殊设置就是按照默认的 origin 来,也是 IDEA 自动补全的,建议在创建远程项目的时候不要轻易修改,这里的 URL 就是在远程项目信息中可以看到,我就不放出来了。

在这里插入图片描述

3、之后弹出一个登录 gitee 的窗口,输入自己在注册 gitee 的账号和密码即可。

在这里插入图片描述

4、验证通过之后,Git Remotes 中便出现了远程项目的 Name 和 URL,最后点击 OK,这样就正式连接远程仓库项目了。

在这里插入图片描述

5)clone

5.1.方式一

在这里插入图片描述

在这里插入图片描述

5.2.方式二

在这里插入图片描述

在这里插入图片描述

6)分支操作

6.1.新建分支

在实际项目开发过程中,当遇到一个需求时,我们并不会直接就在主分支(master)上面进行开发,而是在主分支的基础上单独创建一个新的分支进行开发,当新建分支的代码经过代码评审以及测试验证通过,确认准确无误之后才会将新增的代码合并到主分支master,这才是一个规范的git操作流程。

因此,必须要掌握新建分支的过程,那么创建一个分支的过程如下图所示:

1、首先,单击 “Remote Branches” 下的 “origin/master” 分支,单击选择 “New Branch from Selected…”

在这里插入图片描述

2、其次,弹出对话框,输入你要新建的分支名称。例如,feature-1.1.0,单击“Checkout”,表示创建该分支同时切换到 feature-1.1.0 分支。

在这里插入图片描述

3、然后,创建分支 feature-1.1.0 成功之后,可以在 “Local Branches” 下看到此时有两个分支分别为feature-1.1.0 和 master,这表明本地仓库中已经有了新建的分支了。

在这里插入图片描述

4、但是 “Remote Branches” 下依然只有一个 master 分支,表明在我们的远程仓库依然只有一个master 分支,因此我们还需要把在本地仓库新建的分支推送到远程仓库中,这样就可以在远程仓库中看到新建的分支了。

单击 feature-1.1.0 ,然后在左边单击 “Push” ,弹出推送对话框。单击 “Push” 推送到远程仓库,这样分支新建操作彻底完成,可以看到在"Remote Branches"分支下面出现了“feature-1.1.0”,我们可以在该分支进行编码并进行拉取和推送操作。

在这里插入图片描述

在这里插入图片描述

6.2.删除分支

1、首先,在 “Local Branches” 下单击分支 feature-1.1.0,左边弹出选项选中 “Delete”。

在这里插入图片描述

2、然后,在对话框中勾选“Delete tracking local feature-1.1.0 as well”,意思就是同时删除远程和本地仓库中的 feature-1.1.0 分支。

在这里插入图片描述

3、删除成功之后,出现提示信息 “Deleted Branch:feature-1.1.0”,并且可以在 Git Branches 下看到最新的分支情况。

在这里插入图片描述

6.3.合并分支

合并分支是将 A 分支合并到 B 分支,A 分支称为源分支,B 分支称为目标分支。

注意事项:
master 分支是我们部署在生产环境服务器的分支,master 分支的代码往往是最新的代码。通常我们有一个新的需求时不会直接在 master 分支进行实施编码,而是基于 master 分支拉出一个新的分支,在拉出来的新分支进行实施编码。只有当新分支的代码经过 code review 以及测试联调通过之后,才会将代码合并到 master 分支等待部署上线。
合并分支的流程务必规范:先将 master 分支合并到新分支,之后再将新分支合并到 master 分支。 这样做的原因是因为一个项目通常由多个人负责,可能在你开发的过程中,有新的代码已经合并到 master 分支并且部署上线了,但是你拉的新分支上的代码依旧是 master 分支的老代码。所以需要先更新你拉的新分支上的代码,将其他人更新的代码合并过来,保证你拉的新分支代码与最新的 master 分支代码一致(以免因为丢失最新修改的代码而造成线上事故)之后再将你的新拉的分支代码合并到 master 分支上面。

以 feature-1.1.0 分支和 master 分支为例,将 feature-1.1.0 分支合并到 master 分支中。

1、首先,切换到 feature-1.1.0 分支,将 master 分支合并到 feature-1.1.0 分支中。单击 “Local Branches” 下的 master,选择 “Merge into Current”,这里的 Current 是指目标(feature-1.1.0)分支 ,也就是将 master 分支合并到 feature-1.1.0 分支中,合并成功之后可以看到提示。

在这里插入图片描述

在这里插入图片描述

2、然后,切换到 master 分支下,将 feature-1.1.0 分支合并到 master 分支。

在这里插入图片描述

在这里插入图片描述

3、最后,我们可以看到在 “Local Branches” 下的 master 分支有个绿色的小箭头,这是因为我们刚才的分支合并在本地仓库操作的,并没有将远程的 feature-1.1.0 分支合并到 master 分支中。因此,我们还需要将 master 分支推送到远程仓库,点击 Push 或者使用快捷键 Ctrl+Shift+K 推送到远程仓库即可,推送成功之后绿色提示小箭头也会消失。

在这里插入图片描述

7)推送代码到远程仓库

7.1.commit

在这里插入图片描述

或者

在这里插入图片描述

在这里插入图片描述

7.2.push

在这里插入图片描述

在这里插入图片描述

8)拉取或更新远程代码到本地仓库

我们在 push 代码之前,最好先 update 或 pull 一下远程仓库的代码到本地,防止 push 代码后造成冲突。

8.1.pull

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

8.2.建立本地分支与远程分支的连接

1、实际使用中,在我们创建完分支后,发现无法进行 pull 操作。

在这里插入图片描述

2、我们点击右下角的 git 发现,新建的分支并没有和远程分支进行连接。

在这里插入图片描述

3、IDEA 控制台,通过命令的方式建立本地分支与远程分支的连接。

命令如下:

git branch --set-upstream-to=origin/远程分支 本地分支

在这里插入图片描述

4、此时再次观察,发现已经建立连接,并且可以成功 pull。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

9)常用快捷键

快捷键操作解释
Ctrl+Kcommit changes(提交变化到本地仓库)
Ctrl+Shift+Kpush commits to push(将本地仓库的变化同步推送到远程仓库)
Ctrl+Tupdate project(将远程仓库的代码合并更新到本地)
Ctrl+Alt+ZRollback(代码回滚)

10)总结

Git 作为非常强大的分布式版本管理系统,在版本控制中使用非常广泛,因此学会 Git 非常重要。IDEA 开发工具中集成了 Git,使得我们可以进行可视化操作 Git,进行版本控制,提高了效率。

如果想使用 Git 命令进行操作,请参考:

【Git-Git的安装了解与使用】了解Git & 安装Git & 使用Git

【Git-Git克隆代码与提交代码】使用Git命令方式拉取代码至本地以及上传代码到云端

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

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

相关文章

C++面试宝典第10题:绘制各种图形

题目 我们需要编写一个图形相关的应用程序,并处理大量图形(Shape)信息,图形有矩形(Rectangle)、正方形(Square)、圆形(Circle)等种类。应用程序需要计算这些图形的面积,并且可能需要在某个设备上进行显示(使用在标准输出上打印信息的方式作为示意)。 (1)请使用面…

网安面试三十道题(持续更新)

91 mof提权 ## 是mysql的提权方式,在Linux下不能用,就是利用了 c:/windows/system32/wbem/mof/目录下的nullevt.mof文件,每分钟都会在一个特定的时间去执行一次的特征 sql语句: ## 通过shell上传这个文件,通过sql语句写…

利用Milvus Cloud和LangChain构建机器人:一种引人入胜且通俗易懂的方法

一、引言 机器人已经深入我们的日常生活,从家庭服务到工业生产,再到医疗和运输等领域。然而,这些机器人往往需要复杂的算法和数据处理技术才能有效地执行任务。在这个过程中,人工智能(AI)和机器学习&#…

uniapp 手持弹幕全端实现(微信/QQ小程序 + APP)

见下述效果图,本文话少纯干货 代码实现 <template><view class="main"

网络编程第五天

IO多路复用实现TCP服务器和客户端 运行结果&#xff1a; select实现TCP服务器&#xff1a; #include <myhead.h>#define PORT 8888 //1024~49151 #define IP "192.168.170.126" //ifconfig本机IPint deal_cli_connect(int sfd,struct sockaddr_in *pcin…

【产品经理】Axure原型工具教程

笔记为项目总结笔记&#xff0c;若有错误欢迎指出哟~ Axure原型工具教程 Axure简介原型图分类常用操作常用原件常用交互母版常用设备分辨率 Axure简介 Axure是一款专业的原型设计与交互设计软件&#xff0c;可以帮助用户快速创建高保真的原型和交互设计。Axure支持多种常见的交…

添加调试日志,bug消失

参考&#xff1a;就删了个printf&#xff0c;代码崩了&#xff01; 1、运行报错代码 #include "stdio.h" #include "stdlib.h" #include "string.h"void func1() {int arr[10];memset(arr, 1, sizeof(arr)); }void func2() {int index;int* ar…

ArcGIS渔网的多种用法

在ArcGIS中有一个渔网工具&#xff0c;顾名思义&#xff0c;可以用来创建包含由矩形像元所组成网络的要素类。不太起眼&#xff0c;但它的用途却有很多&#xff0c;今天跟大家分享一篇关于渔网的多种用途。 1.马赛克地图制作 2.基于网格的设施密度统计制作马赛克地图 准备材…

怎么使用jupter notebook并配置环境变量

有的时候需要使用Jupyter Notebook运行代码&#xff0c;Jupyter Notebook的主要特点&#xff1a; ① 编程时具有语法高亮、缩进、tab补全的功能。 ② 可直接通过浏览器运行代码&#xff0c;同时在代码块下方展示运行结果。 ③ 以富媒体格式展示计算结果。富媒体格式包括&…

抖店商品卡不出单做不起来?抖店玩法解读+经验分享,建议收藏

我是王路飞。 目前抖店最常见的出单玩法&#xff0c;一个是商品卡&#xff08;自然流量&#xff09;&#xff0c;一个是找达人带货。 新手喜欢商品卡的原因就是“流量免费”&#xff0c;但同样不止一个新手向我反映过&#xff0c;商品卡真的不好出单&#xff0c;还有风险&…

B055-Maven IDEA UML

目录 Maven简介安装与配置Maven常用命令Maven导包导入项目到eclipsepom.xml介绍查找jar包网址eclipse中使用maven命令&#xff1a; eclipse创建maven项目修改jdk版本eclipse创建maven web项目配置阿里云镜像仓库 IDEA简介安装idea创建java项目idea基本配置删除项目idea创建Mave…

十大数据分析工具排行榜出炉

成功的数据分析师不仅要具有一定的资格和教育&#xff0c;还必须精通一些特定的工具。尤其是在数据采集&#xff0c;数据清理&#xff0c;数据仓库&#xff0c;数据分析&#xff0c;以及数据可视化方面。 近几年&#xff0c;数据驱动对IT创新和企业业务发展都有好处&#xff0…

创新科技赋能,易点易动设备管理系统助力企业实现设备管理升级

在当今竞争激烈的商业环境中&#xff0c;企业对设备管理的要求越来越高。高效的设备管理不仅可以提高生产效率&#xff0c;降低成本&#xff0c;还可以确保设备安全和可靠性。然而&#xff0c;传统的手工管理方式已经无法满足企业快速发展的需求。为了解决这一问题&#xff0c;…

浅谈互联网架构演变

更好的阅读体验 \large{\color{red}{更好的阅读体验}} 更好的阅读体验 前言 可以将某个项目或产品的架构体系按照如下方式分层&#xff1a; 业务层面&#xff1a;项目业务体系技术层面&#xff1a; 数据架构&#xff1a;数据持久层策略应用架构&#xff1a;应用层的实现方式 …

阿里云日志表盘配置-图上展示想要的名称

一、背景 目前写出的一些表盘都是_col这种字段展示的&#xff0c;下次来看表盘的时候都不知道是什么意思了&#xff0c;所以想要将_col可视化一些&#xff0c;记录一下在这个阶段学到的知识。主要是阿里云日志在使用 AS起别名的时候会报错。 二、操作和遇到的注意问题点 我写…

基于openGauss5.0.0全密态数据库等值查询小案例

基于openGauss5.0.0全密态数据库等值查询小案例 一、全密态数据库简介二、环境说明三、测试步骤四、使用约束 一、全密态数据库简介 价值体现&#xff1a; 密态数据库意在解决数据全生命周期的隐私保护问题&#xff0c;使得系统无论在何种业务场景和环境下&#xff0c;数据在传…

解决Pycharm pip安装模块太慢问题,pycharm2022没有manage repositories配置镜像源

解决方案 方法清华阿里云中国科技大学华中理工大学 或者直接-i 加镜像 方法 URL写下面任意一个 清华 https://pypi.tuna.tsinghua.edu.cn/simple阿里云 http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/华中理工大学 http:/…

postman高级用法

背景 在项目开发的过程中&#xff0c;少不了对接口的调用和对自己编写的接口进行自测&#xff0c;或者测试同学用来做接口测试用 问题 请求头&#xff1a;key:authenticationTokenvalue:获取token接口获取的token/external-data/guoyin-iot-platform-external-data-center/man…

如何解决mac无法访问github

确定github能访问的ip地址 点击检测按钮&#xff0c;找到比较快的ip 修改hosts文件&#xff1a;打开终端&#xff0c;输入 open /etc/hosts 后回车&#xff0c;打开mac的文本编辑器 add github.com 140.82.121.4 github.com 199.232.69.194 github.global.ssl.fastly.net …

【Image】GAN的超详细解释(以及奇怪的问题)

GAN原理 工作流程 下面是生成对抗网络&#xff08;GAN&#xff09;的基本工作原理 在GAN的架构中&#xff0c;有两个关键的组件&#xff1a;生成器&#xff08;Generator&#xff09;和鉴别器&#xff08;Discriminator&#xff09;。 生成器&#xff08;Generator&#xff0…
最新文章