Intellij Idea + Git 完美实战!

环境准备

  • 使用前需要安装一个远程的 Git 仓库和本地的 Git 客户端。
  • 由于IDEA中的Git插件需要依赖本地Git客户端,所以需要进行如下配置:

如果本地已有项目,直接通过如下操作,即可在远程自动创建仓库并关联

1. 克隆远程仓库代码(适用于本地无代码,从远程仓库 pull 下来)

注意: 克隆后的文件位置给出的文件如果不存在会自动创建,如果存在,需要为空

克隆成功

2. 初始化 git 仓库(一个新的项目,从 0 开始)

3. 提交(commit) 拉取(pull) 推送(push) 代码

有多种方式可以进行操作,文章中只列举一种

  • 多人合作分支:commit → \to → pull → \to → push,防止代码丢失
  • 单人分支:commit and push,后续弹窗中进行push选择

commit(将所有文件添加到暂存区中)

项目名右击 → \to → Git → \to → Commit Directory...

或者直接点击小图标

界面底下,这里可以看到当前情况

4. push(将代码推送到远程仓库)

点击 push 按钮推送代码:

或者直接点击小标图

确认推送内容:

查看远程仓库发现已经提交完成:

5. pull(从远程仓库拉取代码)

在远程仓库添加一个TestPull.md文件:

从远程仓库拉取代码:

确认拉取分支信息:

6. 从本地创建分支并推送到远程

在本地创建lqh分支,点击右下角的Git:master按钮:

使用push将本地lqh分支推送到远程:

查看远程仓库发现已经创建了lqh分支:

7. 删除分支

删除分支后,需要 push 到远程仓库

8. 分支切换

从 lqh 分支切换回 master 分支:

9. Git文件冲突问题解决

修改远程仓库代码:

修改本地仓库代码:

提交本地仓库代码并拉取,发现代码产生冲突,点击Merge进行合并:

点击箭头将左右两侧代码合并到中间区域:

冲突合并完成后,点击Apply生效:

提交代码并推送到远程。

10. 合代码(不同分支合代码)

  • 描述: 有分支 master,分支 lqh,现计划将分支 lqh 的部分代码合到分支 master 上
    lqh 与 master 分支相同文件的差异如下(这里仅演示方便,差异不在代码而在 README.md ,代码同)

master 分支

lqh分支

  • 切换本地分支为目标分支 master,即将代码合到此分支上
  • 切换前先进行 fetch 操作,保证分支完备

切换为目标分支之后,对此分支进行pull操作,保证当前代码版本为最新

项目名称上右击 → \to → Git → \to → Compare with branch...

选择需要合并到 master 的分支 lqh

最右边 changes 会展现两个分支之间的差异

蓝色文件:两个分支都有,但有一部分做了修改

绿色文件:分支 lqh 有,而分支 master 没有

灰色文件:分支 master 有,而分支 lqh 没有

若要合并灰色文件和绿色文件,建议:

  • 先跳转到存在此文件的分支,复制备份要合并的灰色或绿色文件,
  • 在切换回要合并的目标分支上,将复制好的文件粘贴到对应分支的对应包下

以下步骤为合并蓝色文件的操作


左侧为分支 lqh,右侧为分支 master,点击箭头可将分支 lqh 对当前文件的修改应用到分支 master

修改之后可看到,此文件已有蓝色标识和修改记号

将需要修改的文件修改完毕后可将代码推送到远程分支B

操作顺序:commit 修改内容 → \to → pull 再次拉取代码,保证代码最新 → \to →push修改内容到远程分支

对单独一个文件进行代码合并操作

  • 在当前项目文件右击 -> Git -> compare with... 和本分支的历史版本做对比
  • 在当前项目文件右击 -> Git -> compare with the Same Repository Version 和当前版本做对比(即和修改之前的做对比)
  • 在当前项目文件右击 -> Git -> compare with Branch 和其他分支版本做对比

References

Intellij Idea + Git入门到上手操作,完美实战!

idea集成git详解教程(实用篇)

IDEA 使用Git图文详解(学好idea操作git大全)

相关推荐
机器学习Zero1 小时前
让效率飞升的秘密武器:解锁编程高效时代的钥匙
git·python·github·aigc
GISer小浪花努力上岸2 小时前
Java实现简易计算器功能(idea)
java·开发语言·intellij-idea
海海向前冲2 小时前
设计模式 -- 单例设计模式
java·开发语言·设计模式
就这样很好8802 小时前
排序算法总结
java·算法·排序算法
weixin_486681142 小时前
C++系列-STL中find相关的算法
java·c++·算法
学java的小菜鸟啊3 小时前
Java队列详细解释
java·开发语言·经验分享·python
帅得不敢出门3 小时前
安卓framework美化手势导航侧滑返回UI
android·java·ui·framework·安卓·开发·定制
我是真爱学JAVA3 小时前
第四章 类和对象 课后训练(1)
java·开发语言·算法
可儿·四系桜3 小时前
如何在Linux虚拟机上安装和配置JDK
java·linux·运维
丶白泽3 小时前
重修设计模式-结构型-装饰器模式
java·设计模式·装饰器模式