IDEA中常见的git操作(带案例)
原⽂:
不知不觉,svn已经退居历史,git闪亮登场。现在的项⽬多⼈协同开发,⾸选git,开发⼯具idea⽤的⽐较多,所以,如何在idea上操作git成为了⼀个需要学会的⼩技能。
如果你被git的本地分⽀、远程分⽀、合并、解决冲突等操作弄得不知所措。时间允许的话,先看⼀遍git官⽹的中⽂⼿册吧,内容由浅⼊深,从原理到命令操作,都有详细的介绍。
下⾯来说明idea上git的常见操作。
⾸先假设你已经安装好了git以及idea,接下来在idea上做⼀下配置,即配置的路径。
idea不过是做了可视化界⾯,但所有操作其实内部还是会委托给去执⾏。所以,如果你是⾼⼿,直接⽤命令⾏操作git会更加畅快。
⾸先假设我们的开发流程是这样的:
1、开发⼈员a从远端git仓库的master分⽀克隆⼀份到本地,本地的分⽀名称为branch-a,随后开发a提
交修改到本地;同样的开发⼈员b从远端git仓库克隆⼀份到本地,本地的分⽀名称为branch-b,随后开发b提交修改到本地;
2、每次推送到远程分⽀的时候,最好先拉取远端master分⽀,将其最新的更改合并到本地分⽀,然后再推送本地分⽀到⾃⼰的远端分⽀。这样的操作是为了减少有代码冲突时不能合并分⽀的情况。冲突在拉取master合并到本地分⽀的时候去解决。所以开发a在将⾃⼰的代码推送到远端分⽀的时候,先拉取master分⽀,由于这个时候没有⼈将⾃⼰的分⽀合并到master,所以不会有任何冲突和问题。现在开发a放⼼的把⾃⼰的本地分⽀branch-a推送到远端分⽀branch-a。
3、开发a发起了合并代码的请求:将远端分⽀branch-a合并到master分⽀。
4、开发组长收到合并请求,代码审核通过之后,并通过对⽐没有发现冲突和问题,于是将远端的branch-a合并到了master分⽀。
5、这个时候开发b也想要推送修改到远端分⽀,所以他先拉取master分⽀,然后发现代码冲突了,因为开发a和开发b都对同⼀个⽂件的同⼀⾏代码进⾏了不同的修改。开发b解决了冲突,将修改推送到远端分⽀branch-b,并发起合并请求。
6、开发组长审核之后,合并远端分⽀branch-b到master分⽀。
7、继续各⾃修改代码,提交,拉取,推送,发起合并请求。
下⾯的演⽰是根据上⾯的开发流程来做的:
1、⾸先为了⽅便,在github上先建⽴⼀个仓库:
注意的是,该仓库需要⾸先放⼊⼀些⽂件,然后才会有master分⽀。然后其余⼈员才可以克隆并操作。
2、开发a克隆仓库:
3、下拉下来的本地分⽀名称默认是master,将其修改为branch-a。(idea右下⾓)
这样做的⽬的是,便于本地分⽀切换,否则分不清哪个分⽀对应远端的分⽀了。
现在我们看到了,本地分⽀只有branch-a,当前本地分⽀是branch-a,远端分⽀有origin/master分⽀。
4、为了演⽰⽅便,我在本地新建分⽀branch-b:
现在本地有两个分⽀了:
开发a在分⽀branch-a上开发,开发b在分⽀branch-b开发,互相不影响。
5、接下来切换到branch-a,开发a进⾏开发:
点击branch-a > checkout。
这个操作的意思是:从本地的.git⽂件中检出branch-a,⼯作⽬录的⽂件就会变成branch-a的⽂件。
6、在branch-a中我们添加⽂件a.txt:
⽂件第⼀⾏是:⼼情很不错。
7、接着开发a就把修改提交到本地git了:
写上提交信息,点击commit就提交到本地仓库了。
8、在推送到远端分⽀的时候,先拉取远端master分⽀的代码。在拉取的时候,会⾃动合并到本地当前分⽀上去。下⾯这块区域说明,没有什么需要更改和冲突的⽂件,可以放⼼推送:
这⾥本地是branch-a,我们想要推送到远端的分⽀也为branch-a,点击修改分⽀名称,推送:
9、现在开发a推送到了远端分⽀branch-a。开发a需要发起合并请求:
10、开发组长进⾏代码审查和合并:
2021-11-29
11、现在开发b也是⼀样的进⾏⽂件添加,不过在a.txt中第⼀⾏添加的是:⼼情很丧
现在开发b将修改提交到本地git。在推送之前他拉取远端master,发现了冲突:
点击merge:
处理完冲突,点击apply。也可以去⽂件夹下⼿动解决冲突。
我解决完是这样的:
12、将解决完冲突的⽂件提交到本地git。然后推送到远端分⽀branch-b。最后合并分⽀。由于步骤类似,我就不详细说明了。
13、开发a、开发b现在拉取远端master,看到的是⼀样的内容了。
14、继续后续开发。
git操作本⾝不难,但是要对git的基本概念有⼀个了解才⾏。如果觉得idea的操作有点难以理解,可以试试sourceTree这个可视化⼯具。它可以看到所有本地和远程分⽀,随意切换,拉取,删除分⽀。可git常用指令
以看到每次提交的修改点,历史记录的每个⼈的提交都可以去查看并⽐较。使⽤这个软件基本上是⽆脑操作,但缺点就是安装起来需要⼀点耐⼼。各位看官仁者见仁,智者见智吧。把⼯作完成是第⼀位的,⼯具能够达到⽬的就⾏了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。