Git_IDEA集成Github_拉取远程库代码合并本地库

简介: Git_IDEA集成Github_拉取远程库代码合并本地库

在讲从远程库拉去代码合并到本地库之前,我们先来将一个关于Push(推送)代码中一个大家需要注意的点:


    push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致, push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送!


下面我们来演示如何在idea中将远程库的代码pull下来:


1:首先我们在我们的远程库中对我们的git_maven6项目做一个修改,如下图所示:


添加我们如下代码:


System.out.println("pull test");

2.png

2:修改完成后,此时相当于我们远程库的代码是最新的一个版本,但是本地库中的代码此时还未完成更新,如果此时我们程序员在没有pull下来我们远程库最新的代码,并且在本地完成了对旧版本的代码的更新如下图所示:


2.png


那么此时我们会发现本地库更新了一个Test.java的新的版本,远程库更新了一个对于Test.java的新的版本,所以当我们将本地git_maven6项目push的时候会发生合并冲突,如下图所示:


2.png


此时就需要我们点击Merge进行手动合并代码

2.png

我们会发现中间部分为我们之前本地库与远程代码库版本统一时候的代码,左边为我们本地库对Test.java文件的修改,中间为我们在远程库对Test.java文件的修改,最右边为我们原版Test.java文件。


2.png


此处我们就自己决定要怎么人工解决冲突即可,点击Apply后新的版本会自动提交到我们本地库以及我们的远程库当中去。


总结:为了避免以上的合并冲突的问题,建议我们的同学之后在本地进行开发前,如果我们公司的远程库中其他程序员对我们的代码进行了修改,此时我们的代码有了新的版本,建议我们同学先pull下来后,再进行代码的更新,否则此时便会发生上述的分支冲突问题。


3:下面我们来进行我们正常的pull操作


此时我们的远程库中进行了代码的更新,就以Test.java为例,原本Test.java代码如下图所示:

public class Test {
    public static void main(String[] args) {
        System.out.println("git1");
        System.out.println("git2");
        System.out.println("git3");
        System.out.println("master test");
        System.out.println("hot test");
        System.out.println("push test");
        System.out.println("pull test");
        System.out.println("hello");
    }
}

此时我们对我们远程库当中的这个Test.java文件做出如下修改:


加上System.out.println("pulling test");这句话

public class Test {
    public static void main(String[] args) {
        System.out.println("git1");
        System.out.println("git2");
        System.out.println("git3");
        System.out.println("master test");
        System.out.println("hot test");
        System.out.println("push test");
        System.out.println("pull test");
        System.out.println("hello");
        System.out.println("pulling test");
    }
}


此时当我们远程代码库中的代码进行更新后,需要将远程库中的代码更新到我们本地库当中来,那么就需要使用我们的pull(拉取)来实现

2.png

2.png


点击pull之后,此时我们本地库中的代码更新成功,如下图所示:

2.png

相关文章
|
1月前
|
算法 网络安全 开发工具
[Git]关联远程库的两种方法及配置
本文介绍了 git 的四种连接方式:ssh 连接、HTTPS 连接、SVN 连接和 SVN + ssh 连接,重点讲解了 HTTPS 和 ssh 连接方式的配置及注意事项。文章详细解释了 HTTPS 连接的身份验证过程、常见问题及解决方案,以及 ssh 连接的公钥和私钥的创建、配置方法。此外,还介绍了如何在同一台电脑上连接多个 gitee 账号的方法。
67 0
[Git]关联远程库的两种方法及配置
|
1月前
|
网络安全 开发工具 git
解决fatal:remote error:You can’t push to git://github.com/username/*.g
通过上述诊断与修复步骤,绝大多数的推送错误都能得到有效解决,确保您的Git工作流顺畅无阻。
40 1
|
2月前
|
开发工具 git
git如何修改提交代码时的名字和邮箱?
git如何修改提交代码时的名字和邮箱?
153 4
|
2月前
|
Java Linux 开发工具
IDEA中git提交前如何关闭code analysis以及开启格式化代码
【10月更文挑战第12天】本文介绍了在 IntelliJ IDEA 中关闭代码分析和开启代码格式化的步骤。关闭代码分析可通过取消默认启用检查或针对特定规则进行调整实现,同时可通过设置 VCS 静默模式在提交时跳过检查。开启代码格式化则需在 `Settings` 中配置 `Code Style` 规则,并通过创建 Git 钩子实现提交前自动格式化。
480 3
|
2月前
|
Unix Shell 网络安全
git学习六:(bug总结)git@github.com: Permission denied (publickey).等
本文是关于解决在使用Git和GitHub时遇到的“git@github.com: Permission denied (publickey)”错误的指南。文章提供了详细的步骤,包括确认SSH Agent运行状态、检查密钥配置、确保密钥匹配、验证仓库URL、检查权限和代理设置,以及配置SSH文件。这些步骤帮助用户诊断并解决SSH认证问题。
168 0
|
2月前
|
JavaScript 前端开发 开发工具
一身反骨的我,用--no-verify绕开了git代码提交限制!
【10月更文挑战第7天】一身反骨的我,用--no-verify绕开了git代码提交限制!
131 0
|
3月前
|
Shell 网络安全 开发工具
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
|
开发工具 git 开发者
Git与Github两者的区别|学习笔记
快速学习Git与Github两者的区别
|
开发工具 git CDN
Git与GitHub学习笔记(五)一次提交失败的记录
代码已经跟踪了,添加注释说明,但是总是添加不了 error: pathspec 'live-page'' did not match any file(s) known to git. 重复了好多遍,最后发现代码还是没有提交 D:\wamp64\www\study-line>git commi...
1695 0
|
开发工具 git
Git与GitHub学习笔记(四)合并远程分支
在这里的前提: 1、你已经fork 源作者的项目到你自己的仓库了 2、git clone 自己仓库fork的项目,注意地址,这里是自己的账号下的地址,而不是源作者的项目地址哦 3、在本地修改代码,git push origin master 提交到自己的主分支(自定义别的分支),  提交一个新的...
1057 0