Kaip atnaujinti git kloną --mirror?

Aš sukūriau „Git“ saugyklą, kad galėčiau atspindėti tiesioginę svetainę (kuri yra „ne be„ Git “saugykla):

 git clone --mirror ssh://user@example.com/path/to/repo 

Dabar, kad šis klounas būtų atnaujintas su visais nuotolinio šaltinio pakeitimais, kokią komandą ar komandas turėčiau naudoti?

Norėčiau, kad viskas būtų atnaujinta: įsipareigoja, nuorodos, perėmimai, filialai ir tt

Ačiū!

119
27 мая '11 в 12:16 2011-05-27 12:16 J. Bruni paklausė gegužės 27 d. 11, 12:16 2011-05-27 12:16
@ 3 atsakymai

Tai komanda, kurią reikia atlikti veidrodyje:

 git remote update 
181
27 мая '11 в 14:12 2011-05-27 14:12 atsakymas pateikiamas ralphtheninja gegužės 27 d. 11, 14:12 2011-05-27 14:12

Kalbant apie įsipareigojimus, nuorodas, filialus ir „et cetera“, „Magnus“ reaguoja tik į darbą ( git remote update ).

Bet, deja, nėra jokio būdo clone (arba) update kabliukus , kaip norėjau ...

Radau šią labai įdomią temą apie kablio klonavimą / atspindėjimą:

http://kerneltrap.org/mailarchive/git/2007/8/28/256180/thread

Sužinojau:

border=0
  • Tarpininkai nėra laikomi saugyklos turinio dalimi.

  • Yra daugiau duomenų, tokių kaip .git/description aplankas, kuris nėra klonuotas, taip pat kabliai.

  • Numatytieji hooks , rodomi hooks yra iš TEMPLATE_DIR

  • Git yra ši įdomi template funkcija.

Taigi, galiu ignoruoti šį „klonavimo kablio objektą“ arba pereiti prie rsync strategijos, atsižvelgiant į mano veidrodžio tikslus (tik atsarginis + kitų klonų šaltinis).

Na ... aš tiesiog pamiršsiu klonavimo klonavimą ir laikykitės git remote update metodo.

  • Sehe ką tik nurodė, kad clone / update procesas nekontroliuoja ne tik sulaikymo, bet ir stashes, rerere ir tt Taigi, griežtai atsarginės rsync ar lygiavertės bus tikrai. Kadangi tai tikrai nereikia mano atveju (galiu sau leisti, kad neturiu kablių, vėlavimų ir pan.), Kaip minėjau, laikysiuosi remote update .

Ačiū! Kai kurie mano git-fu pagerėjo ... :-)

7
27 мая '11 в 17:55 2011-05-27 17:55 atsakymą pateikė J. Bruni gegužės 27 d. 11 d. 17:55. 2011-05-27 17:55

Žiūrėkite čia: „ Git“ klonuoja visus klonus?

Jei tikrai norite, traukdami filialus vietoj push --mirror , galite ieškoti čia:

„fetch-all“ git bare saugyklose sinchronizuoja vietinius filialus su nuotoliniu būdu

Šiame atsakyme pateikiami išsamūs nurodymai, kaip tai pasiekti gana lengvai:

4
27 мая '11 в 14:56 2011-05-27 14:56 atsakymas pateikiamas gegužės 27 d., 11 val., 14:56, 2011-05-27 14:56

Kiti klausimai apie „ žymes „ arba „ Klauskite“