]
トップ «前の日記(2013-01-08) 最新 次の日記(2013-01-10)» 編集

Yukiharu YABUKI の tDiary



このtDiaryを検索します。

2013-01-09 [長年日記]

_ Nexus7 から gitolite を利用する

この文章は、Nexus 7(Android)で、玄箱で動いている Debian GNU/Linux の gitolite にアクセスして、git cloneまでを行う時に自分が困ったことを記述したものです。2013/01/10追記。agitをさわっているが、agitはソースコードを参照できても、commitする機能はなさそうなのである。これは、結構参った。Nexus 7は参照だけでメモって後からPCで追記や変更をする必要がある。あと、下でbareオプションのことを書いているが。agitでcloneしたbareリポジトリをbareオプションなしでcloneしたら個々のファイルをtextエディターで編集できる。

環境は、私が実施したもので、各自の環境に応じて内容は読み替えるのが良いでしょう。私の方法が参考になれば幸いです。

利用したもの

  • Nexus 7
  • Connectbot with ssh-agent (connectbotにssh-agentパッチがあたっているソフトウェアです)
  • agit --- 有償ですが、google playで使えそうなのがこれだったので。(GUIでなくCUIのgitでもいいのだけど判らなかった)

  • gitoliteをインストールしているサーバ(私の場合は玄箱)

大まかな手順

前提として、gitoliteがもう運用してあると考えている。あとgitolite関係のドキュメントは、オンラインだと(http://www.atmarkit.co.jp/fjava/rensai4/devtool26/devtool26_1.html)がよいかと、ProGitのgitoliteへのドキュメントへのリンクもあります。あと、この動画も見ておくと良い。

  • connectbot with ssh-agent で、公開鍵と秘密鍵のペアを作る
  • gitolite-admin.git を clone している場所で、keydirにNexus7で作った公開鍵を登録する
  • git add と commit をして公開鍵を gitolite へ送り込む
  • connectbot with ssh-agent から gitolite@サーバー名 でリポジトリ一覧がでるか確認する。でないなら、gitoliteサーバの /var/lib/gitolite/.ssh の中身を確認する。

  • 上記がokなら、agitを立ち上げて、cloneする。私がハマった点は、リポジトリがbareか?はcloneする元のリポジトリのことであり、手元のリポジトリの話でない点に気がつくまでちょっと考えた
  • 最初はリポジトリがでかいと時間がかかりますが、無事 clone できました!

connectbotでescやctrl

ついでに、connectbotを使っている時に、Nexus 7で ESC を入力できなくて悶絶してました。ハードウェアキーボードを接続してても、これにはちょいとはまりました。

ESCやCTRLを使いたい時は、Connectbotが動いている画面をタップして、ESCおよびCTRLキーを表示させましょう。そのあとZZとかでviを終了させるのです。