IDEA Git 项目实战场景
实战场景一:上班啦,从远程仓库克隆项目到本地仓库(Clone)
打开 IDEA,在 Check out from Version Control 下拉菜单选择 Git,如下:

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

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

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

强制 maven 更新工程依赖包

选做:如何工程无法正常启动,则执行 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 按钮,如下:

有三种方式解决代码冲突:
- 本地仓库直接覆盖远程仓库的代码(这种方式非常暴力,慎用哈)
- 远程仓库代码直接覆盖本地仓库代码(这种方式等于放弃的代码提交,慎用哈)
- 合并代码(这种方式才是最保险的方式,但是也是最麻烦的,是把自己的代码手动一行行合并到远程仓库代码中)
合并代码需要程序员有耐心和细心,不要一不小心把别人写的代码给覆盖了哈,如下:
- 合并代码(这种方式才是最保险的方式,但是也是最麻烦的,是把自己的代码手动一行行合并到远程仓库代码中)

左边一栏是你本地仓库代码,右边一栏是远程仓库代码,中间一栏是代码合并的结果。合并好了,点击 Apply 按钮就可以了。
现在代码冲突就已经解决了,你再 push 将本地仓库推送到远程仓库就可以了。
实战场景六:服务器起不来了啦,可以进行版本差异比较
1. 查看 Git 提交的版本信息

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


IDEA Git 项目实战场景的更多相关文章
- git项目实战常用workflow和命令
一个从无到有的项目大体经历-创建项目目录,创建repo,配置过滤集,配置git user,导入已有基础代码入库,将库放到central去,建立分支,修改代码,checkin代码,分支上 测试验证代码, ...
- Git项目实战篇
版本控制器:Git # 达到多人协同开发的目的 安装 """1.下载对应版本:https://git-scm.com/download2.安装git:在选取安装路径的下一 ...
- 【61】git项目实战的步骤总结
1.新建分支的步骤 git pull git checkout -b 分支号(task的后面的代号) 2.提交代码到远程仓库的步骤 git add . git commit -m "分支号+ ...
- Laravel 中使用 swoole 项目实战开发案例二 (后端主动分场景给界面推送消息)
推荐阅读:Laravel 中使用 swoole 项目实战开发案例一 (建立 swoole 和前端通信) 需求分析 我们假设有一个需求,我在后端点击按钮 1,首页弹出 “后端触发了按钮 1”.后端点了 ...
- 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 ...
- 从 0 使用 SpringBoot MyBatis MySQL Redis Elasticsearch打造企业级 RESTful API 项目实战
大家好!这是一门付费视频课程.新课优惠价 699 元,折合每小时 9 元左右,需要朋友的联系爱学啊客服 QQ:3469271680:我们每课程是明码标价的,因为如果售价为现在的 2 倍,然后打 5 折 ...
- 【腾讯Bugly干货分享】React Native项目实战总结
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...
- 【无私分享:ASP.NET CORE 项目实战(第十四章)】图形验证码的实现
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 很长时间没有来更新博客了,一是,最近有些忙,二是,Core也是一直在摸索中,其实已经完成了一个框架了,并且正在准备在生产环境中 ...
- 【无私分享:ASP.NET CORE 项目实战(第十二章)】添加对SqlServer、MySql、Oracle的支持
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 增加对多数据库的支持,并不是意味着同时对多种数据库操作,当然,后面,我们会尝试同时对多种数据库操作,这可能需要多个上下文,暂且 ...
随机推荐
- 简述Java多线程(一)
JAVA多线程 程序:是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念. 进程:是执行程序的一次执行过程,是一个动态的概念,是系统资源分配的单位. 线程是CPU调度和执行的单位. 创 ...
- Kafka优雅应用
Kafka API实战 注意版本问题这个,kafka-client要和kafka的版本一致 <dependency> <groupId>org.apache.kafka< ...
- Spring Boot demo系列(九):Jasypt
2021.2.24 更新 1 概述 Jasypt是一个加密库,Github上有一个集成了Jasypt的Spring Boot库,叫jasypt-spring-boot,本文演示了如何使用该库对配置文件 ...
- Scrum Meeting 目录 && alpha 第一次Scrum Meeting博客
是兄弟就来摸鱼小组 Scrum Meeting 博客汇总 一.Alpha阶段 标号 标题 1 [alpha]第一次Scrum Meeting(见本文) 二.Beta阶段 会议安排 时间 4月23日8时 ...
- python 利用opencv去除图片水印
python 去除水印"人工"智能去除水印 这两天公司来了一个新的需求--去除水印,对于我一个从未接触过的这种事情的人来说,当时我是蒙的.不过首先我就去搜索了一下是否有该种合适的功 ...
- POJ 3301 三分(最小覆盖正方形)
题意: 给你n个点,让你找一个最小的正方形去覆盖所有点.思路: 想一下,如果题目中规定正方形必须和x轴平行,那么我们是不是直接找到最大的x差和最大的y差取最大就行了,但是这个题目 ...
- Redhat中网络启动错误解决办法( Failed to start LSB: Bring up/down networking RTNETLINK answers: File exists)
关于Redhat系列中网络启动失败的解决办法 报错: Failed to start LSB: Bring up/down networking. RTNETLINK answ ...
- JSON对象与字符串的互换——JSON.parse()和JSON.stringify()
parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...
- 【python】Leetcode每日一题-存在重复元素3
[python]Leetcode每日一题-存在重复元素3 [题目描述] 给你一个整数数组 nums 和两个整数 k 和 t .请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] ...
- Failed opening required
报错 点击页面右下角的图标,再点击错误可以显示报错.或者在项目中runtime--log也可以查看error [64]think\\__require_file(): Failed opening r ...