Sök…
Anmärkningar
Nyckeln till att göra detta arbete är att börja med att klona ett bunt som börjar från början av repohistoriken:
git bundle create initial.bundle master
git tag -f some_previous_tag master # so the whole repo does not have to go each time
att få det första paketet till fjärrmaskinen; och
git clone -b master initial.bundle remote_repo_name
Skapa ett git-paket på den lokala maskinen och använda det på en annan
Ibland kanske du vill behålla versioner av ett git-arkiv på maskiner som inte har någon nätverksanslutning. Med paket kan du paketera git-objekt och referenser i ett arkiv på en maskin och importera dem till ett arkiv på en annan.
git tag 2016_07_24
git bundle create changes_between_tags.bundle [some_previous_tag]..2016_07_24
Överför på något sätt filen ändringar_betjäna_tags.bundle till fjärrmaskinen ; t.ex. via tumdrivning. När du har det där:
git bundle verify changes_between_tags.bundle # make sure bundle arrived intact
git checkout [some branch] # in the repo on the remote machine
git bundle list-heads changes_between_tags.bundle # list the references in the bundle
git pull changes_between_tags.bundle [reference from the bundle, e.g. last field from the previous output]
Det omvända är också möjligt. När du har gjort ändringar på fjärrlagret kan du buntas upp deltorna; sätta på förändringarna, t.ex. en tumdrivare och slå tillbaka dem i det lokala förvaret så att de två kan förbli synkroniserade utan att kräva direkt git
, ssh
, rsync
eller http
protokollåtkomst mellan maskinerna.