1.idea初始化项目到gitlab
1.1 vcs - import into version control create gti repo。。。。
1.2.选择仓库指向的项目
1.3提交代码到本地仓库 git -add git commit
1.4 配置远程仓库
1.5提交代码到远程仓库
2.新建提交代码到分支
2.1新建分支
2.2切换分支
2.3提交代码到dev分支
。。。。。。。。。。。。。。
3.从自己的分支修改代码后,切换到别人分支步骤,及可能出现问题
3.1保留当前自己分支的快照
切换分支之前,应该先GIT --> Repository --> Stash changes 保存该分支下的改动。 切换回来后,GIT --> Repository --> UnStash changes 恢复之前的改动,
3.2在切换分支的时候,常常会遇到下图的问题
是因为我在dev分支上修改了代码,但是没有commit,切换到其他分支上就弹出了这个窗口。我们需要怎么处理呢
可以看到弹框底部有Force Checkout Don`t checkout Smart Checkout,表示什么意思呢
smart Checkout就会把冲突的这部分内容带到开发分支(如果你没有点进窗口的那些文件处理冲突的话),比如我在test分支修改到代码,要切换到master分支,点击smart checkout后,master分支会有test分支修改到代码,最好是选smart checkout这样会把本地修改的代码先保存到statsh中,再checkout分支。
Force Checkout 就不会把冲突的这部分内容带到开发分支,如果点了force checkout则本地修改都会丢失!!!!!!!!!正确操作是: 切换分支之前,应该先GIT --> Repository --> Stash changes 保存该分支下的改动。 切换回来后,GIT --> Repository --> UnStash changes 恢复之前的改动,
Don`t checkout 当然是不切分支,继续留在当前分支了。
总结:不要点击force checkout,如果不想当前分支修改到代码出现在要切换到分支中,需要手动Stash changes,如果允许当前分支修改到代码出现在要切换到分支中,可以选择smart checkout。
4.切换到dev分支,并提交代码到仓库,再切换master再想提交一份。
4.1提交代码后,切换到master会发现没有可提交文件,因为修改的文件是在dev分支。
IDEA生成patch和使用patch
解决:
1.Version Control -> Repository 找到提交记录-> 右键create Patch,将patch文件保存在本地
2: 切换到另一个需要提交的分支:
菜单: VCS->Apply patch,选中刚才的patch文件,导入即可, 然后就跟正常提交流程是一样的。
5.gitlab合并分支
6.从仓库拉取代码,可能出现
Your local changes would be overwritten by merge. Commit, stash or revert them to proceed
7.正确拉取别人代码步骤
- idea git拉取、合并、处理冲突、提交代码具体操作
早在两个月前我还在用eclipse开发,并且也发布的一些eclipse git的相关操作(操作都是本人亲自实践过的),但由于项目团队要求,开发工具统一用idea,实在不得已而为之切换了开发工具,
初次使用IDEA时也是不会操作,并且也是经历了百度上众多文章的灌输,我不想大家有跟我一样的历程,因为这太浪费时间了,特此写下此文章分享经验,话不多说,我们开始主题:
特此说明:此文章只传授git的使用操作,具体的git配置不多言明
1.拉取远程git项目到本地
拉取项目成功后,由于本地环境的问题可能会报错(比如maven的依赖jar包报错之类的),需要自己处理解决一下,这里不多言明
2.切换到自己的开发分支(一般每个开发者都有属于自己的开发分支)
切换到属于自己的开发分支后,就可以编码了
3.提交代码到本地仓库
在我们编码完成后,就是要提交修改的代码到本地仓库中
4.拉取远程代码,合并到自己的本地分支
提交自己的代码到本地仓库后,下一步就是提交到远程仓库上
特别注意:在提交到远程仓库之前,要先拉取公共分支的代码(公共分支是什么?为什么要拉取公共分支的代码?在此我简要说一下,我们自己开发分支的内容最终的结果是要合并带master主分支,就避免不了跟其他同事的代码“汇合”到一起,除非整个项目都是你自己一个人开发的,前后端通吃,所以如果我们在提交到远程仓库之前,不拉取其他同事的代码的话,别人写的代码将会被你覆盖掉,别人就白写了,所以要先拉取公共分支上的代码),然后合并到自己的本地分支上。
下面是具体操作:
5.处理冲突
如果没有文件冲突的话,可以直接跳过第5点,这里为了教大家,所以我故意弄了个冲突
合并失败后idea会有以下弹框
6.提交到远程分支
我们合并成功后,需要把我们的代码提交到远程分支上
这样我们的代码就算是提交到远程git上面我们自己的分支了。
如果想要把我们自己改动的远程分支代码应用合并到公共分支上,就需要重复第2点、第4点、第6点即可:将当前分支切换到公共分支,然后merge合并我们刚提交的开发分支,然后把本地的公共分支push提交到远程就ok了,这样远程上的公共分支就有我们的代码。
不过一般我不这样子操作,因为git上面有对应的操作:把开发分支合并到公共分支,具体怎么操作可以百度一下,此文不做介绍,感谢理解。
如果有疑问的可以留言,我们一起学习进步