Idea-Git环境管理

Idea-Git环境管理

本文主要描述IdeaPycharm-Git仓库及环境管理。

代码仓库及开发环境

我们用GitLab数仓管理,用Idea开发环境做分值切换。期间注意事项如下:

  1. 远程仓库 :GitLab远程仓库;Idea-Git环境管理

  2. 分支切换: Idea中远程与本地分支切换
    Idea-Git环境管理

  3. Idea提交Git需忽略的文件
    .gitignore:git本身是支持通过编辑.gitignore文件去忽略一些不想提交的文件的,如果项目工程代码中没有编辑.gitignore文件,那么IntelliJ IDEA会默认把当前本地和远程不一致的文件都列出来,事实上像后缀名是.iml, .idea,target 等文件是不需要提交的
    Idea-Git环境管理
    .iml文件:IDEA中的.iml文件是项目标识文件,用于告诉编辑器这个目录并不是一个普通的目录,而是一个项目。缺少了这个文件,IDEA就无法识别项目。跟Eclipse的.project文件性质是一样的。并且这些文件不同的设备上的内容也会有差异,所以我们在管理项目的时候,.project和.iml文件都需要忽略掉。
    .iml文件生成:在缺少.iml文件项目下运行mvn idea:module,完成后将自动生成.iml文件。
    Maven插件我们的开发工具有Maven插件,Maven其实对各个编辑器也内置了一些处理。可以用mvn idea,mvn eclipse这些命令对项目进行基础信息构建。这些基础信息存储在类似.project、.iml文件中供编辑器去读取。IDEA除了.iml文件,还有.ipr、.iws等
    Maven Idea生成文件
    生成.ipr文件: mvn idea:project
    生成.iws文件: mvn idea:workspace
    生成.iml文件: mvn idea:module

  4. IDEA SVN提交过滤设置
    通用:过滤Iml文件
    Idea-Git环境管理
    New changelist设置指定文件过滤
    如果你当前打开的项目已经从远程仓库拉取过代码的话,或者是已经配置过git的总分支的情况下:New ChangeList-任意修改文件-拖拽到New changelist-提交Default changelist-Git–>Commit Directory-Commit Changes-NewChangeList中有修改后的文件,而Default ChangeList中没有;
    Idea-Git环境管理

  5. Idea去掉添入Git的文件:从git管理中去掉,commit时不把这个文件提交;
    Idea-Git环境管理
    Idea-Git环境管理

等同于暂存区替换git reset head:把本地仓库的文件,替换Stage区里相应的文件(工作区,就是你的文件目录,不受影响);
暂存区删除git rm --cached :直接从暂存区删除文件,工作区则不做出改变。

Idea环境配置

  1. 环境变量设置
    Idea-Git环境管理

Git Remote

  1. git代码仓库管理
    Idea-Git环境管理
    git代码仓库管理分支
    master : 待发布分支。
    develop :开发分支。
    dev-czf : 开发人员开发分支。
    dev-czf-profile : 开发人员具体模块分支。
    hotfix: 紧急bug修复分支。
    master v1.0: 发布分支。
    dev-czf-fix-bug: bug修复分支。
    代码pull request: 开发人员开发分支合并到develop前的代码检查。

  2. master待发布分支和发布分支
    Idea-Git环境管理
    如果确认将要发布版本,则在master上修改项目的版本号之后,切换一个master vxx的分支来待发布。

  3. master分支和develop分支的交互
    Idea-Git环境管理
    develop为开发分支,给出测试版在这个版本上,需要经过多次测试之后才能将代码合并到master。master发布版本之后,develop需要从master更新代码。

  4. master v发布分支和hotfix紧急bug修复分支
    Idea-Git环境管理
    hotfix分支为紧急bug修复分支,当发布版本发布之后发现了非常严重的bug需要立即修复上线;
    如果master的版本还是上个版本的代码,则将master代码直接更新到hotfix分支;
    如果master代码和版本号已经有修改,则找到发布分支上的master vxx ,将发布分支上的代码更新到hotfix;
    在hotfix上修复了bug之后,再合并到master待发布分支或者已发布版本进行版本迭代。

  5. develop开发分支和dev-czf 开发人员开发分支
    Idea-Git环境管理
    每个开发者应当在develop分支中新建一个自己的开发分支,这个分支应该需要保证每天去更新一遍develop的代码。当自己的模块开发完毕之后需要将代码提交到develop。但是提交代码前需要提交pull request来邀请同事检查代码、测试,通过pull request之后才能将自己的开发分支合并到develop。如果不需要pull request则直接合并。

  6. 新建pull request
    Idea-Git环境管理
    将所作的模块和功能写清楚,一般是完成一个模块就去合并一个模块。

  7. 检查代码
    Idea-Git环境管理

  8. dev-czf 开发人员开发分支和具体开发模块分支
    Idea-Git环境管理
    由于一个开发人员往往会同时开发多个模块的情况,所以在开发人员的开发分支上在新建新的模块分支,以保证各个模块开发的时候不产生冲突,如果某个模块已经完成开发,则提交到开发人员开发分支,再由开发分支提交pull request提交到develop分支上。

  9. develop开发分支和bug-czf-fix-bug修复分支
    Idea-Git环境管理
    经过测试的测试肯定会测出不少bug,这个时候测试会将bug总汇起来,并分配给各个开发者,开发者从develop上新建一个分支去修复bug,当修复部分bug之后将代码合并到develop上去。

  10. 远程仓库
    Idea-Git环境管理