機能 ショートカットキー
リファレンス(参考URL)一覧へ移動 R
記事URLをMarkDownとしてコピー Ctrl+M
前のコードタグへ移動 Ctrl+←
次のコードタグへ移動 Ctrl+→
ヘルプを表示・非表示 H
Tips
- ショートカットキーは記事上で有効です。ヘッダー/フッター付近では機能しないことがあります。
- コードタグ移動機能がうまく動かないときは、Shift+F5でページを更新してみてください。
- このウィンドウを閉じるには、Hキーをもう一度押してください

“expect”でGithubのログイン/パスワードを自動入力してpush

プログラミング

“expect “はbashコンソールで対話を自動化する手段である.

sudo apt-get install -y expect

githubへgitをgit pushする時にインタラクティブが生じる.ユーザー名とパスワードである.
これを自動入力してオートマティックにできるようにする.

#!/usr/bin/expect

set USER [lindex $argv 0]
set PW [lindex $argv 1]
set Prompt "\[#$%>\]"

set timeout 5

spawn git push
expect {
    -glob "Username for 'https://github.com':" {
        send -- "${USER}\n"
    }
}

expect {
    -glob "Password for 'https://${USER}@github.com':" {
        send -- "${PW}\n"
    }
}

expect {
    -glob "${Prompt}" {
        # interact
        exit 0
    }
}

使い方

プログラミング
  1. 上記スクリプトを~/lib/github.expなどの名前に変更する
  2. $ ~/lib/github.exp USERNAME PASSWORD
  3. githubにpushできる.
    (前準備として,リポジトリを作っておくこと.Everything up-to-dateなどが表示されればok)

Reference:
http://qiita.com/ine1127/items/cd6bc91174635016db9b

この記事で欲しい情報が見つからなかった方へ

この記事の更新情報がある場合があります。
この記事は以下の記事とも関連性があると思われます。

カレントディレクトリがgitリポジトリかどうか判定する
git log フォーマット変更テンプレ
gitのdiffでmeldを使用する方法
日本国内からGithubなど主要ウェブサイトにアクセスし辛い状況が続いている模様
Git gulp expect cron Atomでリモートサーバー同士でファイル同期をする
Github: リポジトリのstar/fork etcを取得する
Githubでリポジトリ検索の際に便利な検索演算子


管理人の方針で、既存の記事の編集はせず、新しい情報や大きな既存情報の更新があった場合には、新しい記事として公開することになっています。
当記事で欲しい情報が見つからなかった・解決に至らなかった場合、これらのリンクがお役に立てるかも知れません。

どうやってこの関連記事を生成しているの?
この機能のPHPソースコード(2500行)

コメントを残す

Close Menu