day09-git-idea2020之前版本
15.IDEA中使用GIT-集成GIT
目标
在IDEA中集成GIT,初始化工作区及设置忽略文件
内容
集成
在idea中的file菜单中选中settings
弹出settings后在搜索中输入"git",选择Git,指定你的安装的git.exe目录
校验git是否集成完成,点击test,弹出校验窗口,点击git Executed successed 成功则表示集成完成
创建工程
创建一个普通的java工程git-project项目,结构如下:
基本操作-初始化工作区
点击VCS --> Import into Version Control --> Create Git Repository
选择管理的文件夹,这里我现在的为gitProject文件夹
点击左下角,Version control菜单,此时gitProject下所有的文件都变成棕色,说明我们的工作区添加完成了
忽略文件类型
从version control中我们可以看到有一部分文件,我们是不需要提交到本地仓库中去的
那我们怎么做呢?可以拷贝"资料"中.gitignore文件,到gitProject的根目录:
这个时候你会发现,多余的不需要提交的文件类型被忽略了。如果有新的要忽视的文件类型,你可以在.gitignore中添加
小结
IDEA集成GIT时要指定哪个文件
git.exe
忽略文件有什么作用
让git只针对于我们项目主要文件进行维护
16.IDEA中使用GIT-基本操作-add与commit 掌握
目标
在IDEA中实现工作区提交缓存区与缓存区提交本地仓库操作
内容
工作区提交暂存区 add
选中gitProject项目,右键
可以看到Version control中的文件颜色由棕色变成的绿色
暂存区提交本地仓库 commit
点击右下角Version control面板中,选中你要提交的文件,这里我都需要提交,使用全部选中
点击鼠标右键
选中commit:
点击Commit
再次确定,点击Commit
17.IDEA中使用GIT-基本操作-差异化比较
目标
在IDEA中完成差异化比较
内容
工作区与本地仓库比较
在Version Control中选中HelloWorld.java右键:
点击左下角Version Control--->log,就可以查看提交记录
18.IDEA中使用GIT-基本操作-版本回退及撤消
目标
在IDEA中完成版本回退以及撤消操作
内容
制造问题
选择HelloWorld.java,提交刚刚修改的内容到本地仓库中:
填写备注,然后点击commit:
在左下角Version Control中查看log
在HelloWorld.java中添加
提交到本地仓库
在左下角version Control中查看log
可以看出此时:我们一共提交3次,下面我们来进行版本的回退
本地仓库回退撤消
在右下方Version Control点击log,此时我们可以看到3个提交的版本
现在我们在本地仓库中回退到第二次提交,选择第二次提交的标记,右键
选择Hard
工作区撤消
当我们在工作区编辑代码时候,希望撤销未提交本地仓库的代码时候,在Version Control中右键
弹出如下窗口
点击revert,代码则撤销
说明:针对上述工作区的代码撤消,有同学会有疑问,我直接删除不就完了吗,为什么这么麻烦,其实我们在实际开发中代码会很多,那么当你书写了很多不同地方的代码,以至于你都忘记哪些是新编写的代码了,那么删除是一件很痛苦的事情,并且容易误删,所以使用工作区撤销更加方便。
19.IDEA中使用GIT-远程仓库-创建与关联远程仓库
目标
gitee中创建远程仓库并在IDEA中关联远程仓库
内容
创建仓库
新建:git-project-sk
创建步骤省略,如果忘记,可以查看
13.GIT远程仓库介绍与码云仓库注册创建
这个章节关联远程仓库
VCS-->Git--->Remotes
点击之后弹出窗口,点击+
复制git-project-sk 的https地址
20.IDEA中使用GIT-远程仓库-拉取、推送、克隆远程仓库
目标
在IDEA中完成拉取、推送、克隆操作
内容
拉取:将码云上的内容拉取到本地
选择git-project-sk根目录,右键
弹出如下窗口,点击刷新
因为是首次拉取代码会报如下错误
之所以拉取不成功,是因为我们忽略文件与远程仓库的中的忽略文件冲突,这边我们选择合并
重新拉取代码:
拉取完成后我们可以看见远程仓库中的文件已经来到本地仓库
推送:将本地文件上传到码云上面
推送成功提示
这时候去码云上查看:
我们的本地代码就推送到了远程仓库
克隆 掌握
复制码云上仓库地址
在git-project-sk从远处git上克隆项目:
导入完成,如下:
21.IDEA中使用GIT-分支-创建、合并、删除分支
目标
在IDEA中完成分支创建、合并、删除操作
内容
创建分支
创建的同时切换分支:
查看当前分支
合并分支
编辑App.java,需要注意右下角当前分支为dev
提交缓存区代码到本地仓库上的dev分支上
查看version control中的log,发现当前在dev环境上
切换回本地master分支
切换完成:
合并dev提交到master分支
删除分支
本地分支中就不会有dev分支了:
22.IDEA中使用GIT-版本冲突
目标
在IDEA中解决版本冲突
内容
终于到达了用Git最让人讨厌的地方了,处理版本冲突。先说一下为什么会出冲突,如果一个用户连续对一个文件提交多个版本,其实每一个版本都是基于上一个版本的基础上修改的,这样就没有问题了。
但是当多个用户对同一个文件交叉修改的时候就尴尬了。A修改完提交一个,B修改完又提交一个,这个时候A修改完提交,问题来了,如果A提交成功,那么就相当于忽略了B提交的内容。这个时候就要强制你去处理一下这个问题,这就是我们所说的冲突问题。
制造冲突
在码云中对App.java 做如下编辑
在IDEA中拉取代码
这时候App的类变红色,且弹出窗口,需要手动进行合并
解决冲突
选择主干
提交远程仓库
特殊错误
点击最上面的时候进行代码拉取的时候
IDEA git 拉取项目时报 No tracked branch configured for branch master or the branch doesn't exist的提示
选择本地工作空间右键
输入:
命令: git branch --set-upstream-to=origin/master
IDEA中再次拉取