发表于 2024-12-22 17:14:41

【Git 工具】用 IntelliJ IDEA 玩转 Git 分支与版本管理

一、利用 IDEA 配置和操作 Git

1.1 查看 Idea 中的 Git 配置

打开 IDEA 的设置菜单 file->setting->version control -> Git, 查看 Git 配置。
https://i-blog.csdnimg.cn/direct/ae72fe3c55ae4f939fdbdb6dc011800f.png
1.2 克隆 Github 项目到当地


[*] 启用版本控制: 第一次利用IDEA中的Git时,需要开启 版本控制系统 VCS->Enable version control…,,然后选择 Git
[*] 克隆远程项目:点击 Git -> Clone..., 在弹出的对话框中输入远程堆栈地址,点击 Clone 按钮完成克隆操作。
https://i-blog.csdnimg.cn/direct/536e57913484401395ebf3c1df683ab9.png
二、版本管理

2.1 提交并推送修改

(1) 提交修改
点击工具栏上的 Git Commit 按钮,打开提交界面。在提交界面中:


[*]填写提交消息(Commit Message),描述本次修改内容。
[*]勾选需要提交的文件。
[*]点击 Commit 按钮,提交到当地版本库。
https://i-blog.csdnimg.cn/direct/e9ebbe667084465c87276590404c2fd5.png
(2) 推送修改
点击工具栏中的 Push 按钮。确认推送的分支与远程堆栈后,点击 Push 将修改上传到远程堆栈。推送修改到远程服务器。
https://i-blog.csdnimg.cn/direct/0db2cb3f4626446e8c0692e8128d972b.png
(3) 查看日志
推送乐成后,日志中会体现详细的操作信息,比方:
18:59:29.031: git -c core.quotepath=false -c log.showSignature=false push --progress --porcelain origin refs/heads/main:main
Writing objects: 100% (17/17), 2.42 KiB | 619.00 KiB/s, done.
Total 17 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/idealzouhu/git-test.git
        refs/heads/main:refs/heads/main        0af2b4b..b40b631
Done
2.2 拉取远程堆栈

点击工具栏中的 Update Project... 按钮,在弹出的对话框中选择 Merge 进行合并。
https://i-blog.csdnimg.cn/direct/7dcd32ba2457479c9d0364cf03b6a5e9.png
2.3 查看历史

选择某个文件或目次,右键选择 Git -> Show History 查看修改历史。
https://i-blog.csdnimg.cn/direct/4d144370e8564575a80446a4a541a752.png
在历史视图中,可以查看文件或目次的提交记录,包括提交者、时间和详细变更内容。比方,查看 .gitignore 文件的修改历史。
https://i-blog.csdnimg.cn/direct/72892cd0391541ed8f44159e1f731f9f.png
2.4 版本回退

在 IDEA 中可以通过 Reset Current Branch to here 将当前分支重置到指定的提交点。Git 提供三种重置模式:


[*]Soft(软重置): 移动分支指针,不影响暂存区和工作区内容。
[*]Mixed(默认模式): 移动分支指针并清空暂存区,但工作区内容保持不变。
[*]Hard(硬重置): 移动分支指针,并清空暂存区和工作区。
右键分支的某个提交,选择 Reset Current Branch to here, 选择需要的重置模式(发起利用默认的 Mixed 模式)。
https://i-blog.csdnimg.cn/direct/17d24fbdf1814305b03dc3a74148de52.png
留意事项:


[*] 重置后的工作区提醒: 假如 IDEA 提示 Workspace associated with branch 'main' has been restored,表示代码未同步到 reset 后的状态。这条消息的意思是,与 main 分支关联的工作区(即工作目次)已经被恢复到该分支的最新状态。
[*] 为确保代码精确回退,请点击右下角的 Rollback,还原工作区代码。否则的话,分支上的提交可能被 reset ,但是代码却没有回退。
https://i-blog.csdnimg.cn/direct/ca35fb327c4148d5b9612093e0464928.png
三、分支管理

3.1 新建分支

在 分支列表 中右键单击某个分支,选择 New Branch from...。
https://i-blog.csdnimg.cn/direct/ea40792eb94440ba8c6d4d235c77de51.png
然后,在弹出的窗口中输入新分支的名称,点击确认。
https://i-blog.csdnimg.cn/direct/a6af41215bc4423abf8cc1b69eb25ebb.png
3.2 切换分支

在分支列表中找到目的分支,右键选择 CheckOut。当前工作区将主动切换到该分支。
https://i-blog.csdnimg.cn/direct/bd4d0e3fb86241c2a3db23fc6c82e43b.png
3.2 合并分支

(1) 创建 dev 分支并修改代码
从 main 分支新建并切换到 dev 分支,修改 dev 分支的代码并创建新的提交 feat: 更新 test 文件内容。
https://i-blog.csdnimg.cn/direct/2d82c12c9fd24c878249415e4baa86cf.png
(2) 合并 dev 分支到 main 分支
首先,切换到 main 分支,并故意修改与 dev 分支类似的部分,模仿代码辩说场景。然后,点击 dev 分支, 右键选择 Merge 'dev' into 'main', 将 dev 分支的修改内容合并到 main 分支。
https://i-blog.csdnimg.cn/direct/0edf4d70d5564e9498c8dae55c6645e5.png
假如出现代码辩说,界面会提示文件辩说。可以看到, test.txt 的合并出现问题,手动点击 smart merge 进入辩说解决界面。
https://i-blog.csdnimg.cn/direct/fed46a9bf1fc4aa5a38bb98b53044834.png
在辩说解决窗口中,手动处置惩罚辩说内容,选择保留或修改的代码,确保合并无误。
https://i-blog.csdnimg.cn/direct/0b6a7fda70584ecabe7dcf866691e55d.png
(3) 推送 main 分支到远程分支
点击 push 按钮。
https://i-blog.csdnimg.cn/direct/5745ceb297194981993f32422df00c4e.png
将 commit 推送到 远程分支。
https://i-blog.csdnimg.cn/direct/580d8cc5191e4d7a9526c67e05f4a3a0.png
3.4 Cherry-Pick

Cherry-Pick 用于从一个分支中**选择特定的提交(commit)**并将其应用到当前分支上,实用于提取特定更改而不需要合并整个分支。
详细操作步骤为:

[*]切换当前分支为 main 分支。
[*]右键选择 dev 分支中的提交 docs: 更新 test 文件内容,直接点击 cherry-pick。
[*]IDEA 将主动将该提交应用到 main 分支。
https://i-blog.csdnimg.cn/direct/b1ed4b23ba8a4076a6fa6671f470984c.png
可以看到,main 分支里面也相应有了 docs: 更新 test 文件内容 提交。
https://i-blog.csdnimg.cn/direct/8f6357ed25454b84ae13960d99c49923.png
参考资料

Clone Mercurial Repository dialog | IntelliJ IDEA Documentation
Git在IDEA中的利用(详细图文全解)_idea操作git-CSDN博客

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【Git 工具】用 IntelliJ IDEA 玩转 Git 分支与版本管理