完全なリポジトリを、ネットワークに接続されていない新しいマシンに転送する必要があります。単一のファイルエンティティとしてお勧めします。gitバンドルは、スニーカーネット環境git fetch
でのgit pull
スタイル操作を許可しますが、宛先マシンにすでに動作しているバージョンのレポがあることを前提としているようです。
以下に対する正しい呼び出しは何ですか?
- 現在のリポジトリのすべてのブランチをバンドルする
- 宛先ディレクトリで新しいリポジトリを起動します。つまり、ルートコミットを正しくインストールします
明確にするためにパッチをアップストリームに送りました:
`git clone` can use any bundle created without negative refspecs
(e.g., `new`, but not `old..new`).
If you want to match `git clone --mirror`, which would clone other
refs such as `refs/remotes/*`, use `--all`.
If you want to provide the same set of refs that a clone directly
from the source repository would get, use `--branches --tags` for
the `<git-rev-list-args>`.
だから$ git bundle create repo.bundle --branches --tags
クローンに最適です。
$ git bundle create repo.bundle --all
リモート参照を含む、ソースマシンのミラーイメージを提供します。
--all
オプションは私のmanページbundle
(バージョン1.7.6.msysgit.0を調べています)にもありませんclone
。また、のURLセクションで.bundleファイルを使用していません。その使用を推奨することは私に大きな自信を与えます。