Lab———Git使用指北
🤖:使用IDEA Git插件实际工作流程
💡 本文从实际使用的角度出发,以IDEA Git插件为基本讲述了如果使用IDEA的Git插件来解决实际开发中的协作开发问题。本文从 远程仓库中拉取项目,在本地分支进行开发,把分支代码提交到远程分支 以及 管理者如何管理Master分支 四个角度来进行书写,相信看完本文后你也可以快速上手使用和实践Git。
⭐从远程仓库中拉取项目
-
在Gitee上找到远程仓库的位置,复制该项目的链接。
-
在IDEA中选择使用版本控制软件来新建项目。
-
将刚刚复制的项目链接复制到URL当中。
-
使用Maven一键加载工程文件。(右键项目名称 Build as maven project)
-
把data文件夹放到项目目录之下(注意data文件夹不要让git管理,千万不要提交data文件)
具体在IDEA中的流程如下所示:
💡使用Maven的好处:
我们使用Maven来管理我们的工程文件,使用Maven的好处是显而易见的,Maven把所有的依赖都写入了POM.XML文件当中,当我们使用不同的IDE工具(IDEA,Esplice)使用或开发我们的工程文件时工程项目的所有依赖的JAR包都在POM文件当中,我们只需要点击 Add as Mven Project
就可以在本地部署好工程文件
⭐⭐ 在本地分支进行开发
💡 使用Git来进行项目管理的目的:当一个团队同时需要对软件项目进行开发时,可以让团队成员针对被分配的任务并行的进行开发,从而提高项目开发效率。
当使用Git项目来管理本地的项目后:我们就可以在本地进行项目开发了。
当你完成了第一步(从远程仓库拉取项目)之后默认显示的项目是主分支。请注意,当你需要编写代码时并不建议你在本地的主分支当中进行编写。本地主分支的作用只应该是让本地主分支与远程主分支保持一致【也就是说你需要在本地主分支中频繁地拉取代码 update peoject】你需要建立一个本地自己的分支,在自己的分支内进行代码编写。
在本地自己分支内进行开发的流程如下所示:
- 需要在本地创建一个新的分支
- 这个分支的名字要和远程分支的名字一样
- 让本地分支跟踪远程分支
- 编写代码
⭐⭐⭐ 把分支代码提交到远程分支
💡 主分支是远程仓库最重要的一个分支.通常来讲主分支的代码必须是稳定的代码【一个稳定的版本】因为团队的所有人员都会针对主分支的代码进行开发。
当编写完代码之后,你需要把本地自己分支的代码提交到远程仓库自己分支当中,只有当你把自己的代码提交到远程仓库之后,远程仓库的管理员才能对你的代码进行审核,当管理员觉得代码没有问题后管路员会将你的代码Merge(合并)到主分支形成一个稳定的版本。
在IDEA的右上角有一些常用的Git操作按钮它们分别是:update commit push
update project
点击按钮后会使 当前本地分支(当前所在分支)的代码 与远程分支上的代码保持一致。
commit
每次要切换分支时;都要使用commit按钮 把工作代码提交到Git的工作区当中。
🌟 commit提交规范:采用类型+具体描述的方式 :
feat:新功能或功能变更;
fix:修复某些Bug;
docs:改动了某些文档或注释;
style:修改了代码风格;
refactor:重构了某些代码
push
点击按钮后会把在本地分支中的操作 提交到远程跟踪的分支中。
❗❗每次要提交工作代码之前都需要检查当前本地分支的代码是否和主分支保持一致,换句话说就是自己当前开发的代码是不是基于最新代码(Master Branch)上编写的。如果你想提交代码到自己的分支具体来讲你有两种方法【推荐使用基于Rebase的方法】:
-
基于Merge方法提交代码
- 在本地自己分支开发完代码后 进行
commit操作
Checkout 操作
到主分支- 在 主分支上进行
update project操作
- 在本地分支上选择主分支进行
merge into current 操作
- 如果出现冲突请解决冲突
- 把自己分支的代码
Push操作
到远程分支
具体IDEA操作如下图所示:
- 在本地自己分支开发完代码后 进行
-
基于Rebase方法提交代码
ReBase的本意是让远程分支保持干净清爽。并且团队开发人员使用Rebase方法提交也可以减轻主分支管理者的管理成本(把遇到冲突后解决冲突的操作交给了开发人员进行),提升管理和开发效率。
- 切换到本地Master主分支;拉取主分支的最新代码(Update Project)
- 切换到自己的分支 CheckOut 【branchName】
- 在自己的分支内选择 master brach【主分支】并选择 Rebase currented onto selected
- 解决遇到的冲突问题(confilicts)
- 把代码提交到自己的分支(push)
❗❗Other:管理者如何管理Master分支
- RollBack操作
- 主分支内不要使用rebase操作
- 当远程仓库上传了多余的文件时怎么办?
因为本文是偏实用向,只是大概告诉了大家我们如何使用Git来进行多人协作代码开发,其中有许多类似原理的知识并没有进行讲解,如果在实际开发过程中出现了什么问题也可以自行进行搜索。下面附上了学习Git很好的学习资料,希望对你有用 😀
- 链接: Gitee-官网操作说明
- 链接:B站Git操作讲解视频