git bundle 初体験
ついでにこっちも twitter のログを貼ってみる。
19:45:30 wtnabe< bundle はそれ自身もまたサブコマンドを取るのか
20:05:52 wtnabe< 分散バージョン管理システムの bundle ファイルってどん
な拡張子にするもんなんだろう?
21:43:34 wtnabe< git bundle create したものを展開するのは git bundle
unbundle ではなく git pull か?
21:52:03 wtnabe< git clone でもなんでもいいのか。git pull なら事前に
git init が必要だし、clone なら何もしなくていい。パスの指定にだけ気を
つければ(たぶん相対パスはNG)
man によるとこのように書かれていて、
NAME
git-bundle - Move objects and refs by archive
SYNOPSIS
git bundle create <file> <git-rev-list args>
git bundle verify <file>
git bundle list-heads <file> [refname...]
git bundle unbundle <file> [refname...]
すっかり bundle create で作ったファイルは unbundle するものと思っていたんだけど、どうも違ったらしいというか、自分の場合は以下の方法で目的を達成できた。
$ git bundle create /PATH/TO/BUNDLE_FILE HEAD
(bundleファイルを持ち運ぶ)
git リポジトリ内で
$ git pull /PATH/TO/BUNDLE_FILE
あるいはまっさらのディレクトリで
$ git clone /PATH/TO/BUNDLE_FILE
こんな感じで使うものなのかな?
※ pull がうまくいかないときは checkout も試してみるといいよ!
22日の twitter log より。
あと一気に git pull できなくても fetch すると FETCH_HEAD に保存されるっぽいので、これをもとに checkout -f や merge なんかがじっくり作業できるのはいいなと思った。