【Git】GUIツールGitKrakenの設定周りの紹介

この記事は[MicroAd Advent Calendar 2019](https://qiita.com/advent-calendar/2019/microad)の24日目の記事です（仕事が忙しすぎて投稿が間に合いませんでした、申し訳ありません、、、）。

# 前書き
以前「[【Git】GUIツールGitKrakenで気に入っている3つのポイント \- Qiita](https://qiita.com/wrongwrong/items/edb9629e2ad538fde1fd)」という記事を投稿した者です。

前回はどちらかというと好き寄りの話でしたが、今回はより実用的な内容を目指して、一部ですが`GitKraken`の設定周りをご紹介したいと思います。
紹介する内容は以下の4点です。

- `pull`/`fetch`関連設定
  - `pull`オプション/`fetch`の選択
  - `Auto-Fetch`間隔の設定
- UI設定
  - テーマ設定
  - フォント設定

# GitKrakenについて
本文に入る前に、`GitKraken`について大雑把に書きます（前回のコピぺです）。

- [Free Git GUI Client \- Windows, Mac & Linux \| GitKraken](https://www.gitkraken.com/)

GitKrakenはAxosoftによるGitのGUIツールです。
Windows, Mac, Linuxなどクロスプラットフォームで動作します。

Free, Individual, Proのライセンスがあり、それぞれできることが違いますが、今回はPro版（5000円強/学生なら無料）を使って解説していきます。

## 起動画面のイカちゃん
くるくる回ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/d909b297-bf17-2e38-27d8-f271a2f0608e.png)

## 基本的な画面構成
機能解説に入る前に、基本的な画面構成全体の画像です。
大まかに、左がブランチ・リポジトリ等の一覧、中央がグラフィック化されたブランチ、右がDiffや未Commitの内容等という構成になっています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/3421be40-945e-8135-ce3c-6b10821f9530.png)

# pull/fetch関連設定

## pullオプション/fetchの選択
デフォルトでは中央上のボタンから`pull`等を行うことができます。
<img width="476" alt="スクリーンショット 2019-12-22 16.27.24.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/90fadc4a-2d19-907d-3bc7-770029f9edd5.png">

この`pull`はオプションを切り替えたり、`fetch`のみにすることができます。
<img width="476" alt="スクリーンショット 2019-12-22 16.26.30.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/4d06c0cc-bdfe-bf12-12b3-f2825daeb06a.png">

自分はこの設定を`fetch`に合わせて運用しています。
理由は、どうせブランチの変更は`GUI`上から行うため、勝手に現状が変更されてしまうよりも安全だからです。

## Auto-Fetch間隔の設定
前回の記事では「リアルタイムで他の人のブランチも見れて便利！」という内容を書きましたが、その実態は一定間隔での`fetch`呼び出しです。
この機能は確かに便利ですが、その周期が速すぎて重かったり、求めていないから切りたいという場合もあるでしょう。

そういった設定は`Preferences -> General`の一番上にある`Auto-Fetch Interval`から設定できます。
文言の通り、0で`Auto-Fetch`無効化、最大60分のインターバルを設定できます。
<img width="1066" alt="スクリーンショット 2019-12-22 16.59.12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/79d6e0c3-da64-bb60-5f5f-5334ba108e0f.png">

個人的にはデフォルトの1で困っていませんが、「必要なら手動で`fetch`するし、ずっと見てないならもうちょっと間隔長くても問題ないかな」とは思います。

# UI設定

## テーマ設定
デフォルトテーマは`Dark`が選択されていますが、`Preferences -> UI Preferences`の一番上の`Theme`から`Light`を選択することもできます。
<img width="918" alt="スクリーンショット 2019-12-22 17.13.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/82fdf2b7-dc68-9177-10d5-95f64a5ea554.png">

`Light`を設定した様子です。
いつもとかなり違う雰囲気になりますね。
<img width="939" alt="スクリーンショット 2019-12-22 17.16.22.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/bf363ae0-6e32-4351-d14c-d565540ac960.png">
<img width="1438" alt="スクリーンショット 2019-12-25 10.24.24.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/b0bd652f-137f-63d5-f1c0-49a692b2f032.png">

## フォント設定
ファイル変更やマージツール画面に表示されるコードのフォントやサイズ、も、`Preferences -> Editor Preferences`から変更が可能です。

`Mac`のデフォルトでは`Monaco`フォントが設定されています。
<img width="924" alt="スクリーンショット 2019-12-25 13.13.41.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/fceb306d-a523-96d0-524c-2069c9502545.png">

この状態で編集を行うと以下のような表示になります。
<img width="190" alt="スクリーンショット 2019-12-25 13.04.15.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/bbbf5da0-a990-1cc7-c847-bb614a87b4e6.png">

これを`Monoid`フォントに変えてみます。
<img width="926" alt="スクリーンショット 2019-12-25 13.03.28.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/54c6b01c-aa4a-746a-bf18-bd440804e1d0.png">

すると、特徴的な合字もしっかり表示できています。
<img width="190" alt="スクリーンショット 2019-12-25 13.09.54.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280230/e41be748-323f-0c09-f66a-2f085f517ff3.png">

# 終わりに
今回は`GitKraken`の設定可能項目を一部ですが紹介しました。

前回記事を投稿した9月末の最新は`6.2.1`でしたが、そこからも活発にアップデートは進み、現在の最新バージョンは`6.4.1`になっています（先日`Git`の脆弱性が話題になりましたが、それへの対応もされています）。

デフォルトでも非常に使い勝手のよい`GitKraken`ですが、設定面でも様々なチューニングが可能です。
Pro版はちょっとお高いですが、値段相応の価値のあるツールですので、是非一度使ってみて下さい。

- [Free Developer Tools for Students \| GitKraken](https://www.gitkraken.com/student-resources)