git-annex を Windowsにて実験してみた

Git LFS が進んでいるようですが、 git-annex を実験してみました。git-annex はまだ Windows の環境でベータ扱いのようですが…。あまり日本語の記事もなく、手探りで色々と試してみましたが、以下の内容は間違っている可能性があるのでご注意ください。

公式サイトのほうからは Windows のインストーラーが公開されています。これをインストールして使用してみました。自分の環境では、うまくパスが通らなかったため、git-annex が配置された場所に手動でパスを通して動くように変更しています。
その後、公式ページの walkthrough にあった以下のようなコマンドを実行してみました.

とりあえず適当に大き目ファイルを追加してみます。

そして commit してみます。しかしエラーが出てしまいました。

これらを調べてみると以下の箇所に説明が書いてありました。
http://git-annex.branchable.com/direct_mode/
Direct Mode の時には git commit, git push などのコマンドが死ぬようで、代わりに git annex sync のコマンドを使用するようにとなっています。通常の使い勝手から大きく変わってしまうので、これはちょっと厳しいです。また、Windows の環境においては常に Direct Mode となるようです。

とりあえず適当な場所をリモートとして追加してみて、syncさせてみようと思います。

こんな感じで動いたものの bigstore の中へ転送された形跡がありません。そこで調べてみたところ以下のようなオプションを付けるとよいらしいです.

この結果ファイルが転送されて、先としていたディレクトリの容量も増えることが確認できました。しかしながら取得系が Permissionエラーとかで git annex get がうまく機能しない感じでした。

まとめ

git-annex は2つの git リポジトリの構造をベースとして巨大なファイルをやり取りするシステムのようです。ただし、git の通常のコマンドが使えなくなるため、普段の git 操作とは違ったものとなります。
 今回考えていた理想のものが、通常の git コマンドはそのまま使えて、巨大ファイルだけ別処理とするというものだったため、ちょっとこれは使えないなという印象です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする