• idea git基本用法(从git下载、更新、提交代码)


      从svn转过来的朋友,会发现使用git没有svn那样顺手,但还是得用。

      说明:

      在idea中使用git不需要我们本地安装git,也无需手动安装git插件。

    1.从git下载项目

       想在idea中下载git项目,如果此时我们已经打开了其它项目,需要先关闭本项目,idea不像eclipse,不能在同一个窗口中管理多个项目。

      关闭后,会自动来到欢迎界面

      输入git项目的访问地址,以“.git”结尾;

      指定项目存放路径,如果没有自动生成对应的项目目录,需要自己手动加上。

      输入用户名和密码

    3.更新项目代码

      项目的更新,共分两种情况。

      第一种情况:本地代码没做任何修改

      此时,我们直接更新代码就完了,找到工具栏的这个图标,点击更新。

      如果工具栏没有的话,选中项目,右键:

      把一个分支中的修改整合到另一个分支的办法有两种:merge(合并) 和 rebase(衍合);  

      合并比较容易理解:

      同级分支+父节点,三方合并产生C5。

      衍合:分支上的变化会打成补丁,在同级主支上重演一遍,生成新的主节点。

      更为详细、复杂的区别,见文末推荐。 

      用哪种方式都行。 

      第二种情况:本地代码已经修改。 

      在实际开发过程中,一种情况会经常出现,那就是:两人或多人同时修改同一个文件。

      后提交代码的人将会提交失败,也就是:代码冲突。

      此时,我们不能立刻更新代码,一旦更新将会导致本地修改的代码被覆盖掉。

      正确做法应该是:

      将代码先提交到本地仓库。

      commit 

      然后再更新代码;

      最后,将更新后的代码与本地仓库代码进行比较。

      有一种更为简单的方式,就是:

      如果改动比较小的话,将自己的代码拷贝出来,直接更新,然后,把自己添加的代码再加进去就完事了。

    4.提交项目代码

      提交代码,也分两种情况。

      第一种情况:本地是最新代码;

      也就是说:你本地代码就是远程仓库上最新代码,没有其它人在你之前提交代码

      或者,虽然别人先于你提交,但是,代码上互不影响,没有出现交叉的情况。

      勾选需要提交的代码并添加注释;

      这里需要注意的是:

      与svn不同,git的commit只是将代码提交到了本地仓库,并没有推送到远程仓库(别人是无法看到你的代码的)。

      点击上图中的“倒三角”,选择:Commit and Push;

      只要没有错误,就能提交,点击"Commit and Push";

      这样,在代码提交到本地仓库后,就会弹出推送页面;

      Push即可。

      第二种情况:代码冲突。

      当我们push失败的时候,一般就是由于代码冲突造成的。

      此时,我们已经将代码提交到了本地仓库,与远程仓库进行对比,修改好重新CommitAndPush。  

    5.新建分支

      当项目变动比较大的时候,我们往往会选择新建分支,将修改好的代码提交到新分支上。

      切换到Git视图

      一般会在idea底部

      如上图所示,Git仓库分为两种:

      Local:代表本地仓库;

      Remote:代表远程仓库。

      选中本地当前分支,点击左侧的+号。

      注意:只有选中分支,左边的+号才能点击。

      给分支起个名字   

      这样,本地就从mvc-model切换到了test分支上。

      点击工具栏的提交按钮,提交并推送,完成后,远程仓库就增加了test分支,并且这次提交的代码也会被放到test中。 

      如果没有git视图的话,选中项目,遵照此路径打开

    6.删除分支

      无论是本地仓库还是远程仓库,只要是分支都可以进行删除操作。

      先说本地仓库

      只要不是正在使用的分支都可以删除

      如果需要同步到远程仓库上,commit and push即可。 

      再说远程仓库

      只要不是主分支,其它分支都能删除

      这里再讲一下衍合分支

      由于上面在演示的时候,我误把新修改的代码提交到了test分支上;

      mvc-models分支上就不是最新代码了

      如何把test分支上的代码迁移到mvc-models分支上?

      选中test分支,右键选择rebase

      这样,mvc-models就重演了一遍test上的内容。

      相当于将test上的代码更新到了mvc-models上。

      此时,我们将test分支删除,mvc-models记录也会发生变化:

      本地仓库test分支已经消失;

      最新代码归属也回到了mvc-models上。 

      但需要注意的是:

      远程仓库上test分支并没有消失。

      远程仓库上的mvc-models还是原来的,并没有和test搅合在一起。

      test分支却默默发生了些许变化:

      最后提交的代码归属到了mvc-models分支上。

      如何将变化同步更新到远程仓库上? 

      此时,如果我们点击commit的话,由于当前代码与本地仓库代码并没有发生任何改变,所以我们根本无法commit。

       我们再仔细回忆一下命令:

      commit在git里是想本地代码提交到本地仓库;

      push在git里才是将本地仓库发生的变化同步到远程仓库。我们此时也是直接操作的是本地仓库,和代码没有任何关系。

      所以,我们只需要使用push命令即可。

      选中项目,右键

      Push

      推送成功 

      这时,test分支上的代码就更新到了mvc-models分支上啦

      如果需要删除test分支的话,下面两种方式均可。

    7.切换分支

      不管是本地还是远程,选中要切换的分支,右键"Check Out",就会把选中的分支下载下来作为开发节点。

    8.查看git地址

      查看当前项目的git地址

      选中,点击修改,就可以复制Git地址啦。

    9.回滚/还原 

      当我们修改代码后,又不想提交,且需要还原的时候,就需要git的回滚操作啦。

      选中要还原的文件

      如果“Rollback”是灰色的(不能点击),说明此文件和git上代码是一致的。

    10.分支重命名

      注意:

      在idea中,无法切换主分支,以及对分支进行重命名。

      错误示例:

      以对分支进行重命名为例

      需要在本地进行修改,然后再推送到远程仓库上。

      重命名成功,选中该分支,右键,push

      但远程仓库上并没有重命名成功 

      提交代码的时候还是提交到mvc-models上

      别急,虽然重命名的方式行不通,但是,我们可以点击上图中的mvc-models分支,将名字改成:mvc-modules,就成了新建分支

      推送成功

     

      将原来的分支删除即可。 

      如果此时,当git上,mvc-models为主分支的话,就会删除失败。

      需要在git上将主分支切换成其它分支,再次删除就可以了。

    写在最后

      哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

     相关推荐:

  • 相关阅读:
    Codeforces
    BZOJ
    BZOJ
    HDU
    Codeforces
    codeforces
    HDU-5441 Travel 离线-并查集
    codefoeces-1000E We Need More Bosses(tarjan+最长链)
    牛客网暑期ACM多校训练营(第五场)H-subseq 树状数组
    HDU-3533 Escape (BFS
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/14278529.html
Copyright © 2020-2023  润新知