IDEA git操作技巧大全,持续更新中

这篇具有很好参考价值的文章主要介绍了IDEA git操作技巧大全,持续更新中。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者简介

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

目录

1.创建新项目

2.推拉代码

3.状态标识

5.cherry pick

6.revert

7.squash

8.版本回退

9.合并冲突


1.创建新项目

首先我们在GitHub上创建一个新的项目,然后将这个空项目拉到本地,在本地搭建起一个maven项目的骨架再推上去,全流程走一下一个项目从0开始如何托管给git,后文的操作也会基于该项目上来演示。

首先我们在GitHub上创建一个新的仓库:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

在IDEA上把项目拉到本地,拉代码的时候需要进行身份验证,输入自己的用户名密码即可:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

在拉下来的目录下手动建一个maven项目,按照maven项目的结构新建好项目结构,这里省略去了test文件夹和resource文件夹,各位需要的话也可以自己加上去:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

pom.xml示例:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>IdeaGitDemo</artifactId>
    <version>1.0-SNAPSHOT</version>



</project>

然后将该项目变成maven项目:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

然后将项目push到远端仓库上即可。

2.推拉代码

在IDEA的右上角有git推拉的选项。

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

3.状态标识

绿色的新加还未commit的,蓝色表示有所改动但还未commit的。

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

双击想要查看的某一次commit的某一个文件,会弹出当前版本和上一个版本之间的比较面板:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

比较面板里支持一些快捷操作:转跳上一处不同、转跳下一处不同,定位到该文件的源文件。

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

5.cherry pick

当我们想合并某一些提交,而不是合并两个分支的时候,可以用到cherry pick。

举一个使用场景的例子:

当我们有一个主分支main,然后基于main拉出来两条开发分支Dev_A和Dev_B,两个开发团队在这两条分支上各自在开发不同的功能。在开发过程中Dev_A的开发团队发现了main上的一个bug,然后在自己这条开发分支上修复了这个bug。这时候由于两条开发分支都没有完成,不可能直接将Dev_A合并到任何分支上,只能将修复bug的那一次提交合并到各个分支上,这时候就可以用cherry pick。

比如这个时候,Dev_A上有master内容的bug修复,但是后续又有新开发的内容的提交,要是直接将Dev_A分支合并到main上会将未完成测试的不稳定内容合并到main上去,从而扰乱整个main分支。如果将这个bug修复直接合并到其它开发分支上去,会扰乱其它分支正在进行的正常开发。

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

这时候切到main分支,,然后将修复bug那一次提交,cherry pick到main分支上:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

这时候bug修复的那一次提交已经到main分支上来了,将main分支push上去即可:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

6.revert

在实际开发中可能会有这样的情况:

某一段代码在某一个时刻被我们重写了,然后过了没多久客户有个需求变动进来了,发现还是基于原来的代码更好做新的需求。这时候就要求我们把这一段代码回退到上个版本。

很明显是不可能用版本号来将整个代码版本回退到某个版本的,因为其它文件并不需要回退,只有当前的一段代码需要回退。这时候就需要用到revert。revert指令可以将某一个文件回退到指定版本:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

revert后回退的文件肯定会和当前文件存在冲突,这时候就需要手动合并冲突:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

合并完冲突后,IDEA会自动生成一个标准revert的commit message,commit然后推上服务器即可:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

7.squash

在实际开发中我们可能经常会遇见这样的情况:

一个文件刚刚修改完,发现没改对或者没改完,于是又继续修改,继续提交,然后提交里面一大串连续的散碎提交,这时候为了不让log看起来很乱,可以考虑合并多个commit:

首先点要合并的提交里面最早那个,选择从此处开始重构基础:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

选择该节点向上的所有节点,squash into,除第一项外后面的所有都选择为squash:

(博主在操作这一步的时候忘了截图,盗了其它地方的一张图,做个示例)

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

start rebasing:

重新输入commit message。

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

continue rebasing后可以看到多条提交记录合成了一个:

IDEA git操作技巧大全,持续更新中,开发工具,intellij-idea,git,java,原力计划

8.版本回退

该块内容有点多,一个章节的篇幅有限,博主有单独的一篇文章来详聊:

详解IDEA git 版本回滚-CSDN博客

9.合并冲突

该块内容有点多,一个章节的篇幅有限,博主有单独的一篇文章来详聊:

【git merge/rebase】详解合并代码、解决冲突__BugMan的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-713079.html

到了这里,关于IDEA git操作技巧大全,持续更新中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【Unity开发必备】100多个 Unity 学习网址 资源 收藏整理大全【持续更新】

    【Unity开发必备】100多个 Unity 学习网址 资源 收藏整理大全【持续更新】

    众所周知,工欲善其事必先利其器,有一个好的工具可以让我们事半功倍,有一个好用的网站更是如此! 但是好用的网站真的太多了,收藏夹都满满的(但是几乎没打开用过😁)。 所以本文是对Unity相关的网站进行一个资源整合,可以让我们更方便的去学习Unity的更多知识内容

    2024年02月16日
    浏览(11)
  • 10.(开发工具篇vscode+git)vscode如何使用git代码更新流程
  • 后端Linux软件安装大全[JDK、Tomcat、MySQL、Irzsz、Git、Maven、Redis...持续更新中]

    后端Linux软件安装大全[JDK、Tomcat、MySQL、Irzsz、Git、Maven、Redis...持续更新中]

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月16日
    浏览(17)
  • 后端Linux软件安装大全[JDK、Tomcat、MySQL、Irzsz、Git、Maven、Redis、Nginx...持续更新中]

    后端Linux软件安装大全[JDK、Tomcat、MySQL、Irzsz、Git、Maven、Redis、Nginx...持续更新中]

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月16日
    浏览(26)
  • 开发工具——IDE安装 / IDEA子module依赖导入失败编译提示xx找不到符号 / IDEA在Git提交时卡顿

    开发工具——IDE安装 / IDEA子module依赖导入失败编译提示xx找不到符号 / IDEA在Git提交时卡顿

    近期换了工作电脑,公司的IT团队不够给力,不能复制电脑系统,所以又到了需要重装IDE配置开发环境的时候了;在安装和导入Java编译器IDEA的时候遇到一些\\\"棘手\\\"问题,这里整理下解决方法以备不时之需; 按照顺序 安装和配置环境; JDK6/JDK7/JDK8 下载和环境变量:JDK8下载安装

    2024年02月11日
    浏览(22)
  • Git-团队开发及版本控制工具(操作指南)

    Git-团队开发及版本控制工具(操作指南)

    下载地址:Git (git-scm.com) 或 Git for Windows 安装:一般情况一直next就行,详细请看:Git 详细安装教程(详解 Git 安装过程的每一个步骤)_git安装-CSDN博客 安装之后校验是否成功:如果出现版本号就说明安装成功了 2.1初始化本地仓库 初始化之后文件夹有一个.git文件,如果没有请

    2024年03月15日
    浏览(50)
  • Git 无法提交,拉取等的问题大全(包含IDEA操作Git的问题)

    Git 无法提交,拉取等的问题大全(包含IDEA操作Git的问题)

    我们开发项目时,经常会和第三方接口打交道,有些第三方项目为了安全起见,会把项目部署在\\\"内网\\\"环境,不对外暴露,通常会提供VPN代理才能访问到资源。 而在项目中我就因为这个而遇到了一个问题,你就是IDEA 配置Git 后无法进行 pull 和 push 操作 这个主要是因为对外网进

    2023年04月10日
    浏览(10)
  • Linux集锦大全【持续更新】

    仅个人想法,会持续不间断更新和改进。 繁忙的世界中,偶尔也需要放空一下自己,找寻一下自我。 简而言之,就是要 解压 一下。 那么在Linux的世界里,也是有不少的解压方法的。 Linux的tar命令可以用来压缩或者解压缩文件。 官方定义为: tar - an archiving utility 语法 使用该

    2024年01月22日
    浏览(10)
  • C/C++语言学习路线: 嵌入式开发、底层软件、操作系统方向(持续更新)

    C/C++语言学习路线: 嵌入式开发、底层软件、操作系统方向(持续更新)

    1.1 视频教程点到为止 1.2 炫技视频看看就行 1.3 编程游戏不玩也罢 有些游戏的主题任务就是编程,游戏和实际应用环境有一定差异(工具、操作流程),在初级阶段主要是熟悉实际场景,而且多数是通过前端语言进行游戏,对底层软件学习的帮助不大。 Coding Games: PHP、C、

    2024年04月28日
    浏览(15)
  • 【自用】【持续更新】LaTeX常用基础语法大全

    【自用】【持续更新】LaTeX常用基础语法大全

    居中 排序列表 加粗 A 、 A 、 我们 、 我们 、我们 textbf{A}、boldsymbol{A}、boldsymbol{我们}、textbf{我们}、我们 A 、 A 、 我们 、 我们 、我们 斜体 我们 、 我们 textit{我们}、it{我们} 我们 、 我们 向量(顶有向量箭头→) v ⃗ vec v v 估计(顶有尖头hat) y ^ hat{y} y ^ ​ 平均(

    2023年04月13日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包