Macにhubをインストールして使えるようにするまでの手順
既にインストールされているかを確認したい場合
以下コマンドでバージョンが確認できます。
$hub --version
インストールする
以下を実行してインストールします。
$brew install hub
インストール後の設定
Macにhubコマンドのエイリアスを張ります。
$cd $HOME
$vim .bashrc
エディタが開かれたら、以下を追記します。
eval "$(hub alias -s)"
2ファクタ認証を通るように準備
方法は2通りあります。自分で設定する方法と、自動で作成する方法です。
自動で設定する方法
修正内容をadd, commitしたあとに、以下コマンドを打ちます。
$ hub pull-request
username, passwordを入力し、2ファクタ認証のコードを入力します。
github.com username: hogehoge
github.com password for hogehoge (never stored):
two-factor authentication code: ****
自動でファイルが作成されました。
$ ls -la ~/.config/hub
-rw------- 1 hogehoge staff 112 11 9 14:26 /Users/hogehoge/.config/hub
手動で設定する方法
使用するGitアカウントの Settings > Developer settings > Personal access tokens を開きます。
Scopeは何もチェックしなくても作成することができます。
~/.config
配下にhub
というファイルを作成します。
$ vim ~/.config/hub
エディタが開いたら、以下を入力します。
{UserName}にはGithubアカウントの名前を、{token}には先ほど生成したtokenを入れます。
github.com:
- user: {UserName}
oauth_token: {token}
protocol: https
これで準備は完了です。
以下コマンドを入力し、エディターでPRの概要などを入力すればPRを出すことができます。
$hub pull-request
トラブルシューティング
エラー: Bad credentials
▼エラーメッセージ
$ hub pull-request
Error creating pull request: Unauthorized (HTTP 401)
Bad credentials
原因
tokenの値が間違っていた。
解決方法
~/.config/hub のtokenの値が正しいか見直す。
必要があれば、tokenを再作成して試す。
エラー: Not Found Are you sure that github.com/hoge/hoge exists?
▼エラーメッセージ
$ hub pull-request
Error creating pull request: Not Found (HTTP 404)
Not Found
Are you sure that github.com/hoge/hoge exists?
原因
私の場合は、tokenを作り直して~/.config/hub
の値を変更し実行したところ、このエラーが出てしまいました。
解決方法
一度~/.config/hub
を削除し、 #自動で設定する方法 の手順を行ったところ、成功しました。
おそらく、~/.config/hub
側の設定を変えても、使用されているGITHUB_TOKENの変更ができていなかった為に起きていたものと思われます。
参考:https://github.com/github/hub/issues/878
ちょっとした使い方メモ
エディターを開かずにコマンド実行だけでPRを出す
シェルスクリプトの中で実行する時など、エディターを開きたくない場合に。
1.テンプレートファイルを作る
PRの概要欄に記載したい内容を、あらかじめテンプレートとして作成しておきます。
内容を変えたい時は、よしなにファイル操作を行えば、バッチ内でいい感じに使えます。(たとえば日付を変えたい時は、sedで変更するなど)
YYYYMMDD_PR_Title
## チケット
CHICKET_URL
## 対応内容
FIX_DETAIL
2.hubコマンドのオプションでテンプレートファイルを指定する
$hub pull-request -F ~/pj/template.txt
https://github.com/hogehoge/fugafuga/pull/9999
このようにエディターを開かずPRを作成できます。
また、テンプレートの一行目がPRのタイトルとなります。
ラベルを指定する
-l "{ラベル名}"
$hub pull-request -F ~/pj/template.txt -l "label_name"
レビュアーを指定する
-r "{レビュアー名}"
$hub pull-request -F ~/pj/template.txt -r "reviewer_name"
Author And Source
この問題について(Macにhubをインストールして使えるようにするまでの手順), 我々は、より多くの情報をここで見つけました https://qiita.com/udonkoneko55/items/3b1a1d05d5beb4241998著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .