用 IDEA 的 Task 功能管理你的任务和 Git 提交

4,001 阅读3分钟

背景

日常工作和生活中,会接触到各种任务追踪系统,比如 Jira、GitHub issue 这些。然后我们还需要在 Git commit message 中关联相应的任务,这样后续 review 会非常方便的了解改动背景。

但是这样就导致了一个问题:在开发过程中,需要频繁的在开发环境和任务管理环境之间切换,提交的时候还需要从任务中找到信息附到 commit message 中。用户体验比较差

解决方案

曾经我一直想要自己开发一个插件,来解决这个问题。

当时我心目中需要实现的功能有:

  1. 可以在 IDE 中查看任务列表
  2. 可以在提交的时候根据任务信息自动生成 commit message

幸好在我还没开始开发的时候就发现了 IDEA 这样的一个功能:Task

Task 不仅满足了我上面两个需求,还给了我意外的惊喜:

  1. 可以在开始处理新问题的时候自动生成新的 Git 分支和 ChangeList,符合 Git flow
  2. 不仅支持 Jira,还支持 GitHub、Gitlab、Trello 等主流应用。

For Example: Github issue

接下来我以 GitHub 为例,演示下怎么配置和使用这个功能。

第一步 在 IDEA 中连接 GitHub

在菜单栏按照 Tools > Tasks & Contexts > Configure Servers 操作路径,打开配置页面。

点击 ,然后选择 GitHub :

添加了 GitHub 以后是这样子的:

接下来,按照界面上的提示,配置你要连接的仓库的用户/组织名称,还有仓库名称

此处为了方便理解,以我的一个仓库为例

  • T-Oner 就是 Respository Owner
  • VaiPixel 就是 Respository Name

还有 API Token ,这个你可以使用你已有的 token,也可以点击 Create API token 来新建一个。

确保信息都正确填写后,点击 OK 就保存了。此时如果配置信息都正确的话,就已经可以连接上 GitHub 了。

第二步 浏览 issue

你可以在菜单栏按照 Tools > Tasks & Contexts > Open Task 操作路径,打开 issue 列表,也可以直接按快捷键 option + shift + N (Windows 用户是 alt + shift + N)拉起页面。

第三步 开始处理一个 issue

当我们要开始处理问题的时候,就在 issue 列表选择一个问题,然后双击打开:

在这个页面你可以配置 issue 的状态是否新建 Changelist 以及它的命名,还有新建的 Git 分支信息等等。当然如果你对命名没有太多要求,直接默认配置就可以了。

选择一个 issue 之后,本地就会直接切换到新的 Git 分支,并且激活到相应的 Changelist。

第四步 配置 commit message 模板

虽然前面那些操作已经可以很方便了,但是还有一个重头戏没有说。那就是根据 issue 的信息来生成 commit message,像下面这样:

要怎么配置呢?还记得第一步中连接 Github 的页面吗?

填写配置的页面有一个名叫 Commit Message 的 Tab:

在这里勾选上 Add commit message 后,就可以编写你自己的模板了,输入框下面有提示魔法值变量,像我这样配置,最后提交的时候就会根据选择的 issue 自动生成:

SpendTogether-1 [Feature]完成添加账单选择成员界面 fix #1

这样子提交后,既有规范的 log,又可以在 pr 通过后,issue 跟着关闭。关键是不用自己来回切换复制粘贴,是不是很舒服 😆。

最后

我只是示范了 GitHub 的配置信息,其他的像 Jira 这些,配置其实都是类似的,大家自己可以摸索摸索🤪

欢迎大家关注我的公众号~