zl程序教程

您现在的位置是:首页 >  工具

当前栏目

极简idea下git操作(一)- 代码提交,版本冲突

IDEAGit代码 操作 版本 提交 冲突 极简
2023-09-11 14:16:57 时间

git是现今公司项目中用的最多的代码版本管理工具,而idea是java中用的最多的开发工具,idea就像一把瑞士军刀,里面集成了很多开箱即用的功能,其中就包括了git,今天我们来记录下平时开发中常用的git操作。

从代码库中拉项目

我们刚进入公司的时候,项目经理会提供项目的git账号和项目地址,我们需要通过这个地址来拉项目代码。

在idea的开始界面,或者项目中的VCS菜单下面,有个Get from Version Control,点击后有个弹框,输入git地址就能拉项目了,如果是第一次拉会提示输入账号密码

 

三板斧--commit, pull,push

现在你有项目代码了,可以开始愉快的写代码了,等你开发完功能,就需要上传代码了,这时就要用到git三板斧了,也是你日常使用中最常用的三个功能,commit-把代码提交到本地仓库,pull-拉取远程仓库代码到本地,push-把本地代码提交到远程仓库,每次提交都按照这个顺序来执行就行了

上传本地项目到空白仓库

有时候,还没有建git仓库,我们就开始写代码了,等git仓库建好后,我们如何把写好的代码放入呢?这边提供一个傻瓜式操作方式,先通过上面的方式把代码拉到一个新的目录,在这个新的目录中会发现.git文件夹,把这个.git文件夹拷贝到你的项目目录中,然后就可以执行三板斧了,commit-pull-push,那个新的目录可以删掉,后续还是在你的项目目录中开发,需要注意的是要在文件夹的查看中把隐藏项目勾选上

 

 头疼的冲突

对于新手来说,最害怕遇到的就是代码冲突,在开发的时候让每个人负责单独的功能可以尽量减少冲突,当然遇到冲突也不要怕,静下心来慢慢合并就行了。

下面我们来模拟下冲突的场景。

原始代码:

public class App {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

A修改后的代码:

public class App {
    public static void main(String[] args) {
        System.out.println("Hello World!我是A!");
    }
}

B修改后的代码

public class App {
    public static void main(String[] args) {
        System.out.println("Hello World!我是B!");
    }
}

这时A去PULL代码就会提示冲突

 上面写明了哪些文件有冲突,A可以选择accept yours,就是完全用A的代码,抛弃B的代码,accept theirs表示抛弃 A的代码用B的代码,merge表示手动合并

这个界面被你关掉了也不用紧张,在下面菜单的Version Control点resolve仍然能弹出来

 点merge后弹出以下界面

左边 Changes from dev表示本地dev分支的代码,也就是A的,右边Change from origin/dev表示远程dev分支的代码,也就是B的,中间result表示合并后的代码,

我们把A和B的代码合并下,结果如下

 然后点右下角的Apply就结束合并了

这时冲突解决,继续三板斧commit,pull,push,就可以了