实战场景一:上班啦,从远程仓库克隆项目到本地仓库(Clone)

  1. 打开 IDEA,在 Check out from Version Control 下拉菜单选择 Git,如下:

  2. 在弹出窗口的 URL 地址栏中输入远程仓库的 Git 地址,然后点击 Clone(克隆)按钮,如下:

  3. 克隆成功后,本地仓库就复制了一份和远程仓库的工程。然后,会出现一个弹框,问你是否打开克隆的工种,点击 Yes,如下:

  4. 打开项目工程后,需要将工程中 maven 设置改为自己的 maven 路径,如下:

  5. 强制 maven 更新工程依赖包

  6. 选做:如何工程无法正常启动,则执行 maven 命令重新编译工程,如下:

mvn clean compile

实战场景二:干活啦,将自己写的代码 commit (提交)到本地仓库

1. 新增文件, add -> commit 操作(先添加文件,然后提交)

新增文件时,会弹出是否 add 操作,选择 Add 即可自动添加文件

也可以手动 Add 添加文件,如下:

注意:没有执行 Add 操作的文件是红色的,执行了 Add 操作以后文件会变为绿色

接着执行 commit 提交文件操作

弹出 commit 提交窗口,必须填写提交日志信息(内容为提交的文件是干嘛的)

2. 修改文件,commit 操作

如果直接在源文件中修改了代码,则直接 commit 即可。

3. 删除文件,delete -> commit 操作(先删除文件,然后提交)

先 delete 删除文件,弹出如下窗口:

然后 commit 提交删除文件。

4. 恢复文件操作

想要 commit 提交之前的文件操作状态,可以如下:



但是,文件一旦 commit 提交到本地仓库就无法恢复了哈。

实战场景三:下班啦,将本地仓库代码提交到远程仓库(Push)

进行 push 操作,如下:

点击 push 按钮,将本地仓库代码推送到远程仓库中,如下:

显示推送成功,这样你写的代码就成功上传到了远程仓库了,可以下班走人了啦。

实战场景四:将远程仓库代码拉到本地仓库(Pull)

如果你想让自己的本地仓库代码与远程仓库保持同步,那么可以将远程仓库代码拉到本地仓库中,如下:

注意:将远程仓库代码拉到本地仓库,会覆盖你的本地仓库代码哦,一不小心可能今天你就白干了。

实战场景五:push 代码冲突啦,是谁改了我的代码

什么叫代码冲突呀?就是你在修改工程一个文件,另一个同事也在修改和你相同的文件,不过同事手快已经把文件推动到远程仓库了。这时,你再把这个文件推送到远程仓库就会导致代码冲突啦。

push 推送文件出现冲突弹出窗口如下:

点击 merge 按钮,如下:

有三种方式解决代码冲突:

    1. 本地仓库直接覆盖远程仓库的代码(这种方式非常暴力,慎用哈)
    1. 远程仓库代码直接覆盖本地仓库代码(这种方式等于放弃的代码提交,慎用哈)
    1. 合并代码(这种方式才是最保险的方式,但是也是最麻烦的,是把自己的代码手动一行行合并到远程仓库代码中)

      合并代码需要程序员有耐心和细心,不要一不小心把别人写的代码给覆盖了哈,如下:

左边一栏是你本地仓库代码,右边一栏是远程仓库代码,中间一栏是代码合并的结果。合并好了,点击 Apply 按钮就可以了。

现在代码冲突就已经解决了,你再 push 将本地仓库推送到远程仓库就可以了。

实战场景六:服务器起不来了啦,可以进行版本差异比较

1. 查看 Git 提交的版本信息

2. 选择远程仓库版本与本地仓库代码比较



IDEA Git 项目实战场景的更多相关文章

  1. git项目实战常用workflow和命令

    一个从无到有的项目大体经历-创建项目目录,创建repo,配置过滤集,配置git user,导入已有基础代码入库,将库放到central去,建立分支,修改代码,checkin代码,分支上 测试验证代码, ...

  2. Git项目实战篇

    版本控制器:Git # 达到多人协同开发的目的 安装 """1.下载对应版本:https://git-scm.com/download2.安装git:在选取安装路径的下一 ...

  3. 【61】git项目实战的步骤总结

    1.新建分支的步骤 git pull git checkout -b 分支号(task的后面的代号) 2.提交代码到远程仓库的步骤 git add . git commit -m "分支号+ ...

  4. Laravel 中使用 swoole 项目实战开发案例二 (后端主动分场景给界面推送消息)

    推荐阅读:Laravel 中使用 swoole 项目实战开发案例一 (建立 swoole 和前端通信)​ 需求分析 我们假设有一个需求,我在后端点击按钮 1,首页弹出 “后端触发了按钮 1”.后端点了 ...

  5. Asp.Net Core 2.0 项目实战(3)NCMVC角色权限管理前端UI预览及下载

    Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...

  6. 从 0 使用 SpringBoot MyBatis MySQL Redis Elasticsearch打造企业级 RESTful API 项目实战

    大家好!这是一门付费视频课程.新课优惠价 699 元,折合每小时 9 元左右,需要朋友的联系爱学啊客服 QQ:3469271680:我们每课程是明码标价的,因为如果售价为现在的 2 倍,然后打 5 折 ...

  7. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  8. 【无私分享:ASP.NET CORE 项目实战(第十四章)】图形验证码的实现

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 很长时间没有来更新博客了,一是,最近有些忙,二是,Core也是一直在摸索中,其实已经完成了一个框架了,并且正在准备在生产环境中 ...

  9. 【无私分享:ASP.NET CORE 项目实战(第十二章)】添加对SqlServer、MySql、Oracle的支持

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 增加对多数据库的支持,并不是意味着同时对多种数据库操作,当然,后面,我们会尝试同时对多种数据库操作,这可能需要多个上下文,暂且 ...

随机推荐

  1. Leedcode算法专题训练(搜索)

    BFS 广度优先搜索一层一层地进行遍历,每层遍历都是以上一层遍历的结果作为起点,遍历一个距离能访问到的所有节点.需要注意的是,遍历过的节点不能再次被遍历. 第一层: 0 -> {6,2,1,5} ...

  2. Day12_60_多线程的创建和启动(一)

    多线程的创建和启动 * 在java语言中实现多线程的第一种方式, 继承 java.lang.Thread; 之后重写run()方法. * 使用多线程之后,主线程和其他线程是不在同一个栈中的,一个线程对 ...

  3. 数据结构之LinkedList | 让我们一块来学习数据结构

    highlight: monokai theme: vue-pro 上一篇文章中使用列表(List)对数据排序,当时底层储存数据的数据结构是数组.本文将讨论另外一种列表:链表.我们会解释为什么有时链表 ...

  4. K8S(18)容器环境下资源限制与jvm内存回收

    K8S(18)容器环境下资源限制与jvm内存回收 目录 K8S(18)容器环境下资源限制与jvm内存回收 一.k8s中的java资源限制与可能的问题 方案1:通过JVM的Xms和Xmx参数限制 方案2 ...

  5. 1022 Digital Library

    A Digital Library contains millions of books, stored according to their titles, authors, key words o ...

  6. B - Tempter of the Bone(DFS+剪枝)

    The doggie found a bone in an ancient maze, which fascinated him a lot. However, when he picked it u ...

  7. kali 中文乱码解决

    在命令行输入"dpkg-reconfigure locales".进入图形化界面之后,(空格是选择,Tab是切换,*是选中),选中en_US.UTF-8和zh_CN.UTF-8,确 ...

  8. Redis—简单动态字符串(SDS)

    目录 Redis-简单动态字符串(SDS) SDS的定义 SDS与C字符串的区别 1. 常数复杂度获取字符串长度: 2. 杜绝缓冲区溢出: 3. 减少修改字符串时带来的内存重分配次数 4. 二进制安全 ...

  9. java中的NAN和INFINITY

    java浮点数运算中有两个特殊的情况:NAN.INFINITY. 1.INFINITY: 在浮点数运算时,有时我们会遇到除数为0的情况,那java是如何解决的呢? 我们知道,在整型运算中,除数是不能为 ...

  10. pr加字幕

    选择免费字体 自由字体整理了免费的商用字体 安装字体 将下载好的.ttf文件,右键选择为所有用户安装 如果没有选择为所有用户安装,你在Arctime或者premiere中可能无法找到这个字体 而且想要 ...