GitHub を CLI で使う時の便利コマンド Hub コマンド の使い方をまとめてみた。
はじめに
こんにちは、たじまです。
会津大学アドベントカレンダー2018 12日目です。
初めてのアドカレなので穴開けないようにめちゃめちゃ調べたりコマンド打ってます。
本記事ではgit
を CLI
で使う際の便利コマンド、hub
コマンドについて紹介します。使って見ようと思ったのですが、マイナーバージョンアップに伴った記事が少なかったので、調べるついでにまとめてみました。( 間違い、訂正を見つけたら教えてください!!! )
インストール方法やその後のエイリアスなどなどは 本家GitHub や紹介記事などを参考にしてください!
環境
-
hub
: 2.6.0 -
git
: 2.16.3
hub コマンドとは
hub
コマンドは、GitHub が提供してる CLI ツールです、 git
コマンドを拡張し、GitHub 特有の機能にアクセスできるようにします。
プルリクエストの作成 や、ブラウザでリポジトリページを開く など GitHub ユーザにはたまらない便利機能もりもりです。
git
で alias
していることが推奨されています。しかし、本記事では git
本来のコマンドと区別するために、hub
と始めるものとします。
詳しい設定方法は github/hub など調べてみてください!
使用する前に注意
hub
コマンドは、開発が活発的(?)であり、マイナーバージョンの違いによって挙動が違ったり、git
の新機能に hub
が追いついていないことがあります。また hub --help
には存在するけど実装されてないコマンドがいくつかあります。
本記事で紹介するコマンドも使えないことがあるかもしれないので、その都度調べたり公式のREADMEを参照してください。
便利おすすめコマンド
hub コマンドの中でもよく使う & 便利なものをピックアップして解説していきます。
- hub create
$ hub create [repository name]
GitHub でリポジトリをつくり、それをローカルの origin
に追加します。
オプション | 説明 |
---|---|
-h |
GitHubの新しく作ったプロジェクトページを指定することができます。 |
-d |
リポジトリの概要(上の方に一行で出ているやつ)を指定します。 |
-p |
プライベートリポジトリとして作成します。 |
-o |
GitHubのリポジトリ作成後、ブラウザでリポジトリのページを開きます。 |
-c |
標準出力に出力するリポジトリURLをクリップボードにコピーします。 |
ディレクトリを作成して、ディレクトリ名でリポジトリを作成する例です。
$ mkdir hoge1; cd hoge1
$ git init; git create -d 'A sample repository' -h 'https://example.com'
Initialized empty Git repository in /Users/yousan/tmp/hoge1/.git/
Updating origin
https://github.com/yousan/hoge1
-d
と-h
は下記のように設定されます。
- hub browse
$ hub browse [username]/[repository name]
指定したリポジトリをブラウザで開いてくれます。自分のリポジトリを開く時は username
は必要いりません!
またgit管理下で origin
を設定しているとリポジトリ名もいりません。
- hub clone
$ hub clone [username]/[repository name]
git clone https://github.com/github/hub
と同じことを、hub clone github/hub
だけでクローンしてくることができます!便利!
- hub fork
$ hub fork
これはいつもブラウザで[fork]ボタンを押しているのをCLIで完結できます。
hub clone [usename]/[repository name]
-> hub fork
とするだけで、フォークができます!
-hub issue
issue周りのコマンドです!
$ hub issue
任意のリポジトリ下で実行すると、現在Openなissueが一覧で表示されます。
こんなかんじです。ラベルに色がついてて綺麗ですね。
ちなみに hub
コマンドには今(2018/12/11)現在Openなissuesが196個あります。
まだまだ便利になっていきそうです。
$ hub issue show [issue number]
先ほどのコマンドのオプションです。
issue の番号を指定して、その中身を見ることができます。
$ hub issue create
任意のリポジトリ下で、issueを作ることができます。
-
-l
issue にラベルをつけることができます。 -
-a
Assigneesを指定できます。複数人のときはカンマ,
区切りにします。
- hub pull-request
$ hub pull-request
任意のリポジトリの任意のブランチでブラウザに移動しなくてもプルリクエスト( PR )を送ることができます。
コマンド実行の後、テキストエディタが立ち上がりそこでメッセージをかけます。
git commit
-> git push
-> hub pull-request
これだけでPR!
- hub pr
現在開いているPR関係です
$ hub pr list
PR のリストを表示できます。
$ hub pr checkout [PR number]
PR の番号を指定することでその PR のブランチへ行けます。
チーム開発だとこれなかなか便利!
まとめ
この記事の情報集めのために --help
オプションにはとても助けられました、みなさんも使ってみてください。
私は個人開発ばかりですが、チーム開発で hub
を使うとまた違った便利さがあると思うので、今後もっと体験していきたいです!
参考
hub --help
github/hub
GitHub のコマンドラインツール「hub」の基本と便利な使い方のまとめ
GitHubユーザーのためのhubコマンド
GitHubのコマンドラインツール hub でプルリクエストを効率よく作る