GitKraken GloBoards 介绍

2019-03-31 20:56 +0800

2019-06-06 23:24 +0800

GitKraken是一款好康的图形界面git客户端。而且5.0版本起支持内置GPG加密。

安装与登陆

官网:https://www.gitkraken.com/

下载后可以选择用GitHub或者是GitKraken账户登陆,GitHub学生包用户可以免费使用一年,选GitHub后在打开的浏览器窗口中登陆即可。

特色功能

  • 彩色的git log
  • 拖动进行reset、merge等操作
  • 一键撤销/重做
  • 内置diff、代码编辑器和冲突解决
  • 查看文件历史和git blame
  • 支持管理git submodule
  • GPGcommit签名

界面介绍

UI

  1. 库相关信息。
  2. Git log。
  3. 操作按钮。
  4. commit相关信息。

偏好设置

在右上角可以点开preferences菜单,里面可以对软件和git进行自定义设置,包括fetch层数、merge和diff使用的工具、终端软件等。

Preferences

还可以连接GitHub等远程服务器,创建SSH密钥来认证用户。

Preferences - Auth

5.0版本起,支持了内置GPG加密,可以对commit进行数字签名来认证身份。

Preferences GPG

库设置

点击左上角的文件夹图标,可以打开一个代码仓库。可以选择打开本地、克隆远程和新建仓库,点点鼠标就可以了,非常傻瓜化。

Open-Repo

面板左侧显示了当前仓库的信息,从上至下分别是:

Repo-Info

  1. 本地分支
  2. 远程分支(如果有多个远程仓库,就会显示多个)
  3. PR(合并请求)
  4. Tag(标签)
  5. Git子模块

如果双击分支就可以直接checkout到该分支,右键菜单从上往下分别对应了不同的git操作:

  • remote (pull/push/set-upstream)
  • merge (rebase/ff)
  • checkout/reset/revert/rename/delete
  • git log中切换显示分支与否
  • tag

Branch-Info

点击Pull Requests可以直接发起一个PR。

Git-PR

顶部按钮

Top-Buttons

如图,分别为

  1. 切换仓库
  2. 切换分支
  3. undo/redo:撤销/重做。如果发现自己错误的进行了一次commit、merge,可以直接按下undo撤销。简单粗暴,非常有用
  4. pull/push:将代码与远程服务器同步;如果push时发现服务器拒绝了push,此时软件会提示你是否要进行force push或者取消。
  5. branch:创建分支
  6. stash/pop:隐藏/应用更改。如果你发现自己有些工作没做完,此时又必须切换到另一个分支干别的事情,可以先按stash保存工作并恢复到最后一次commit,然后安全地checkout。同时用这个方法可以把本分支的所有修改先隐藏,再安全的应用到另一个分支。
  7. 打开GloBoards(下面有介绍)

GitLog

Git-Log

在gitlog区域左侧的标签表示当前的分支,每个节点表示一次commit,右边对应的是commit的标题。上图中,从下往上分别是:

  • 一次commit
  • 当前分支(example)下的最新commit
  • next分支服务器端的最新commit
  • next分支本地的最新commit
  • next分支上被标记为WIP(Work in progress)的隐藏更改

Git-Commit

左键点击一次commit可以查看详细信息,右键可以对这个commit进行相关操作,途中内容分别是:

  1. 详细操作,包括:创建分支、reset、revert、创建tag等。
  2. commit ID (点击即可复制)
  3. commit信息
  4. commit作者与时间
  5. 修改的详细内容

如果点击commit信息,就可以对该次commit的信息进行修正(amend)。注意只有当前最新的commit可以修正。

Git-Amend

如果点击了一个详细文件,就可以打开diff模式,查看本次commit中的修改:

Git-Diff

如果右键点击了一个详细文件,此时可以选择查看File History/Blame,查看本文件对应的修改在何时被引入。这在多人合作项目中确定谁写了bug非常有用。

File-Options File-Blame

合并分支

在GitKraken中,有多种合并分支方法:

  • 右键branch或者commit,然后点merge
  • 拖动分支标签到另一个分支上 Merge
  • 开PR然后到GitHub或者别的网站上去合并

如果合并时出现了冲突,可以直接用内置的diff软件解决。解决冲突时点击代码块边上的按钮就可以选择对应的代码,比命令行方便多了:

Merge-Conflict

GloBoards

Glo-Boards

GloBoards是GitKraken内置的一款Kanban Scheduling System。简单地说,就是把任务放在不同的栏目里,标记不同的状态,来管理自己的工作流程。

可以选择多种新建方式:创建空板、一个预设的看板或者打开已经存在的看板,也可以创建与GitHub Issue同步的看板,来安排处理issue的工作流。

Glo-Init

标准的看板分为三栏:TODO、In Progress和Done。

Glo-Labels

看板中的内容可以添加各种标签、Markdown的TODO来标记进度。

Glo-Calendar

可以设置项目的截止日期,切换到日历模式进行观看。