Intellij Idea + Git 完善实战!
环境准备[*]使用前需要安装一个远程的 Git 堆栈和本地的 Git 客户端。
[*]由于IDEA中的Git插件需要依靠本地Git客户端,所以需要举行如下配置:
https://i-blog.csdnimg.cn/blog_migrate/326f624a914a5b13cc62d6b4b299d718.png
https://i-blog.csdnimg.cn/blog_migrate/47e004fa2b612e90746698fae50e83db.png
https://i-blog.csdnimg.cn/blog_migrate/127289ce136ebf4d26d5db8056fc74f5.png
如果本地已有项目,直接通过如下操纵,即可在远程自动创建堆栈并关联
https://i-blog.csdnimg.cn/direct/4430b6e1c3de4509924787448746ca96.png
1. 克隆远程堆栈代码(适用于本地无代码,从远程堆栈 pull 下来)
https://i-blog.csdnimg.cn/blog_migrate/aca8f2f1e7c0e8e3ab27eec9c86cc60b.png
https://i-blog.csdnimg.cn/blog_migrate/a0237533b2729c9cdf18537650f4b5cf.png
https://i-blog.csdnimg.cn/blog_migrate/ce43bac971c506f4cec094792b5b89eb.png
https://i-blog.csdnimg.cn/blog_migrate/f21c623225ba5c135f9d396548219245.png
留意: 克隆后的文件位置给出的文件如果不存在会自动创建,如果存在,需要为空
https://i-blog.csdnimg.cn/blog_migrate/49a7337658c9470be8408a93f62e6994.png
https://i-blog.csdnimg.cn/blog_migrate/0d33359287a60a663eb28f6e8322d0b8.png
克隆乐成
https://i-blog.csdnimg.cn/blog_migrate/9b59857f85e448c3aaad241d7cafa82c.png
2. 初始化 git 堆栈(一个新的项目,从 0 开始)
https://i-blog.csdnimg.cn/blog_migrate/6b7a35ed1e57e19cca7fc060d48675c0.png
https://i-blog.csdnimg.cn/blog_migrate/564441301420408e0a469ab717661d3c.png
https://i-blog.csdnimg.cn/blog_migrate/7645df0dc1d4626d3d89aa5b604beb0c.png
https://i-blog.csdnimg.cn/blog_migrate/4c70bc4e4e1b10232d09a70b1875d3ed.png
https://i-blog.csdnimg.cn/blog_migrate/2e33278f89b9cca3965a0829b06161cd.png
3. 提交(commit) 拉取(pull) 推送(push) 代码
有多种方式可以举行操纵,文章中只列举一种
[*]多人合作分支:commit → \to → pull → \to → push,防止代码丢失
[*]单人分支:commit and push,后续弹窗中举行push选择
commit(将全部文件添加到暂存区中)
项目名右击 → \to → Git → \to → Commit Directory…
https://i-blog.csdnimg.cn/blog_migrate/de9a45fa328127d98acce6c1027cfb4f.png
或者直接点击小图标
https://i-blog.csdnimg.cn/blog_migrate/5f5c434cb8b64eb468f963036979916e.png
https://i-blog.csdnimg.cn/blog_migrate/849cdeb3d83b4aa36b09cb8b295f6956.png
界面底下,这里可以看到当前情况
https://i-blog.csdnimg.cn/blog_migrate/d290d483c33d12f408bba0dd6aed5950.png
4. push(将代码推送到远程堆栈)
点击 push 按钮推送代码:
https://i-blog.csdnimg.cn/blog_migrate/2a1a3dfa89e71fadf1db55af2a7781fa.png
或者直接点击小标图
https://i-blog.csdnimg.cn/blog_migrate/2752039ff6731ce013ba77fcff022000.png
确认推送内容:
https://i-blog.csdnimg.cn/blog_migrate/565654086a2a59b35c6a454129417946.png
查看远程堆栈发现已经提交完成:
https://i-blog.csdnimg.cn/blog_migrate/83bae3e323446febb4cefbda6c41d8d9.png
5. pull(从远程堆栈拉取代码)
在远程堆栈添加一个TestPull.md文件:
https://i-blog.csdnimg.cn/blog_migrate/161ca144ff3fe0fea55508fff44579a3.png
从远程堆栈拉取代码:
https://i-blog.csdnimg.cn/blog_migrate/2f8976c3ec7e98bdbf862ad232d047b3.png
确认拉取分支信息:
https://i-blog.csdnimg.cn/blog_migrate/6e8fa580675793fdd3ccdc6e8d02e31b.png
https://i-blog.csdnimg.cn/blog_migrate/490c83c353795590cdf22749c42ba865.png
6. 从本地创建分支并推送到远程
在本地创建lqh分支,点击右下角的Git:master按钮:
https://i-blog.csdnimg.cn/blog_migrate/a21dda990d048d7573bc33438c0a0044.png
https://i-blog.csdnimg.cn/blog_migrate/445e8fda31db9e7b4340a9c7a8b8433b.png
使用push将本地lqh分支推送到远程:
https://i-blog.csdnimg.cn/blog_migrate/3cc0b5a5d84940aee858e24bed36ca7b.png
查看远程堆栈发现已经创建了lqh分支:
https://i-blog.csdnimg.cn/blog_migrate/099915ef8a4b996ad9aeb303cfa91b83.png
7. 删除分支
删除分支后,需要 push 到远程堆栈
https://i-blog.csdnimg.cn/blog_migrate/ca4232d78c06466de5b6679db7ad6896.png
8. 分支切换
从 lqh 分支切换回 master 分支:
https://i-blog.csdnimg.cn/blog_migrate/af7e8157d6c4e38dd359127e5e166265.png
9. Git文件冲突题目解决
修改远程堆栈代码:
https://i-blog.csdnimg.cn/blog_migrate/53ccd3bb2f7c08e1f3c8162ce15576cd.png
修改本地堆栈代码:
https://i-blog.csdnimg.cn/blog_migrate/dd19c10164c27ea27b9d1549232c7c6d.png
提交本地堆栈代码并拉取,发当代码产生冲突,点击Merge举行合并:
https://i-blog.csdnimg.cn/blog_migrate/2584aede6eb0b8e5d90bd45635242b69.png
点击箭头将左右两侧代码合并到中间区域:
https://i-blog.csdnimg.cn/blog_migrate/87a3b0da0ef64d843f093df2a4d7b741.png
冲突合并完成后,点击Apply生效:
https://i-blog.csdnimg.cn/blog_migrate/d6658df0657040d721b7cd12aec8e36c.png
提交代码并推送到远程。
10. 合代码(不同分支合代码)
[*]形貌: 有分支 master,分支 lqh,现计划将分支 lqh 的部分代码合到分支 master 上
lqh 与 master 分支类似文件的差异如下(这里仅演示方便,差异不在代码而在 README.md ,代码同)
master 分支
https://i-blog.csdnimg.cn/blog_migrate/56d91b2e8d0ef7f2a29bc25a2f930410.png
lqh分支
https://i-blog.csdnimg.cn/blog_migrate/850866ec5c877b1cc646e83bfdbd050a.png
[*]切换本地分支为目标分支 master,即将代码合到此分支上
[*]切换前先举行 fetch 操纵,包管分支完备
https://i-blog.csdnimg.cn/blog_migrate/cdaf4426a5a482bf094427c7ccededd0.png
https://i-blog.csdnimg.cn/blog_migrate/88d6cedcfccc05d686aee203a58b588e.png
切换为目标分支之后,对此分支举行pull操纵,包管当前代码版本为最新
https://i-blog.csdnimg.cn/blog_migrate/32ffe0eb047df2317aa5d1063720ee2e.png
https://i-blog.csdnimg.cn/blog_migrate/7bef871294b61fbfbcd4015dc51370e4.png
项目名称上右击 → \to → Git → \to → Compare with branch…
https://i-blog.csdnimg.cn/blog_migrate/7da979a177d65572db15cc3f3b5c261c.png
选择需要合并到 master 的分支 lqh
https://i-blog.csdnimg.cn/blog_migrate/093a59b9ca6dbf6a748860acc51591a4.png
最右边 changes 会展现两个分支之间的差异
https://i-blog.csdnimg.cn/blog_migrate/f528e3abbe78e046b0b2d4167169aeed.png
蓝色文件:两个分支都有,但有一部分做了修改
绿色文件:分支 lqh 有,而分支 master 没有
灰色文件:分支 master 有,而分支 lqh 没有
若要合并灰色文件和绿色文件,建议:
[*]先跳转到存在此文件的分支,复制备份要合并的灰色或绿色文件,
[*]在切换回要合并的目标分支上,将复制好的文件粘贴到对应分支的对应包下
以下步调为合并蓝色文件的操纵
https://i-blog.csdnimg.cn/blog_migrate/0ef9dc345c3c679b46a1bf2c906f907a.png
https://i-blog.csdnimg.cn/blog_migrate/fb0a5d25779d0a5f625cc65a66af4f55.png
左侧为分支 lqh,右侧为分支 master,点击箭头可将分支 lqh 对当前文件的修改应用到分支 master
修改之后可看到,此文件已有蓝色标识和修改暗号
https://i-blog.csdnimg.cn/blog_migrate/6d7b0a3faabaffea38ce794af40aa97f.png
将需要修改的文件修改完毕后可将代码推送到远程分支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大全)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]