SORU
3 EYLÜL 2010, Cuma


Nasıl senkronize geliştirme tutmak için git-paket kullanılır?

Senkronize kalkınma ağaçlarımı aralarında hiçbir ağ bağlantısı ile farklı bilgisayarlar üzerinde tutmak istiyorum.

Merkez ve git deposu var, ve ben normalde ofis bilgisayarımda kendi klon üzerinde çalışmak. Bazen hiç ofis ağına bağlı olan bir bilgisayar, üzerinde biraz geliştirme yapman lazım. Bilgisayarların hiçbiri internete bağlı. Kalkınma eşitleme arasında her iki bilgisayarda da yapılabilir.

En iyi araç gibi görünüyor gıt-paket için yardım sayfaları okudum, ama gerçekten iyi bir iş oluşturmak için nasıl emin değilim.

Bana bazı tavsiyeler ya da ipucu verebilir misin?

CEVAP
3 EYLÜL 2010, Cuma


Demetleri!

Gıt paket ile iş akışı başka bir iş akışı temelde aynı olacak. Bu olabilir gibi çok yararlı tavsiyeler, ama burada: kullandığınız her türlü iş akışı normalde kullanmak ve yerine "itme/çekme" ile "taşıyan bir paket burada bir flash sürücü, sonra çekin".

Adam sayfa aslında tek yönlü bir örnek daha olsa ne almak için oldukça iyi bir şans vardır. Bütünlüğü uğruna, burada biraz değiştirilmiş bir versiyonu, bilgi her iki yönde hareket gösteren

# on hostA, the initial home of the repo
hostA$ git bundle create hostA.bundle --branches --tags

# transfer the bundle to hostB, and continue:
hostB$ git clone /path/to/hostA.bundle my-repo
# you now have a clone, complete with remote branches and tags
# just to make it a little more obvious, rename the remote:
hostB$ git remote rename origin hostA

# make some commits on hostB; time to transfer back to hostA
# use the known master branch of hostA as a basis
hostB$ git bundle create hostB.bundle ^hostA/master --branches --tags

# copy the bundle back over to hostA and continue:
hostA$ git remote add hostB /path/to/hostB.bundle
# fetch all the refs from the remote (creating remote branches like hostB/master)
hostA$ git fetch hostB
# pull from hostB's master, for example
hostA$ git pull

# make some commits on hostA; time to transfer to hostB
# again, use the known master branch as a basis
hostA$ git bundle create hostA.bundle ^hostB/master --branches --tags
# copy the bundle to hostB, **replacing** the original bundle
# update all the refs
hostB$ git fetch hostA

# and so on and so on

Dikkat gereken en önemli şey, başka bir uzaktan kumanda ile yaptığınız gibi bir uzaktan bir paket ekleyin ve kurabilirim. Uzaktan güncelleştirme için, sadece yeni pakette, önceki yerini bırak.

Ayrıca olarak toplamak için biraz farklı bir yaklaşım aldım. Adam sayfa etiketleri, her zaman başka bir ana bilgisayara transfer son başvuruları ile güncel tutulması kullanır. Sadece son başvuruları transfer için bakın hangi uzak dalları kullandımdandiğer ev sahibi. Biraz verimsiz; bir adım geride olduğu için ihtiyacınız olandan daha fazla bağlanıyor sonunda. Ama flash sürücüler büyük, küçük paketler ve hakemler zaten fazladan bir adım atmak ve etiketler konusunda dikkatli olmak zorunda yerine kullanarak çaba bir sürü kaydeder.

Sorun biraz onlarla bas edemezsin, yapamazsın demetleri". rebase kılan tek şey Eğer bu paket yeni bir temele dayalı istiyorsanız, bunu yeniden oluşturmanız gerekir. Eğer yeni taahhüt eder istiyorsanız, bunu yeniden oluşturmanız gerekir. Bu güçlük bir sonraki önerim sebebiyet verir...

Başparmak götürmek Repo

Repo gerçekten büyük olmadığı sürece açıkçası, bu kadar kolay olabilir. Bir başparmak götürmek üzerinde çıplak bir klon koyun ve itin ve her iki bilgisayarlardan gelen indirebiliriz. Ağ bağlantısı gibi davranın. Merkez repo aktarmak için ihtiyacınız var? Keyfine Bak!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
Git

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Derek Banas

    Derek Banas

    12 AĞUSTOS 2008
  • FailArmy U

    FailArmy U

    29 AĞUSTOS 2009
  • placeboing

    placeboing

    7 Mart 2006