2012-07-24 29 views
60

Dört kişilik bir ekip, yerel değişiklikleri ortak bir ağ sürücüsüne göndermek için Git'i (özellikle Github for Windows) nasıl kullanabilir?Git bir paylaşılan ağ sürücüsüne geçme değişiklikleri

Şu an (Git olmadan) dosyaları ağ sürücüsünden yerel makinemize kopyalamamız, dosyaları düzenlemeniz ve sonra bunları paylaşılan ağ sürücüsüne yeniden yüklememiz gerekiyor. Bu, birçok hataya neden olabilen özenli bir süreçtir, ancak Git'in bize yardımcı olabileceği bir şey gibi görünüyor.

Git'i ortak sürücüye kurabilir ve oradan gidebilir miyiz?

cevap

20

Ekibimiz şu anda tam olarak bunu yapıyor. Her Geliştirici aşağıdaki sahiptir:

  1. Git kendi kişisel paylaşılan sürücüye kendi yerel makinede
  2. Erişim yüklü (L:) paylaşılan grup sürücüsüne
  3. Erişim (V:)

Biz V: sürücüsünde "uzak" deponun (init -bare kullanarak ayarlayın) ve herkesin kişisel L: sürücüsünde bir kopyası vardır. Tüm değişiklikler L: sürücüsüne yapılır ve daha sonra diğer geliştiriciler tarafından L: sürücülerindeki ilgili kişisel depolarına geri çekilir, V: sürücüsüne kadar itilir. Bu herhangi bir sorun olmadan çalışır ve bir Git sunucusu ihtiyacını azaltır.

+0

Tamam, harika! Önce bir yerel repo oluşturmalı ve sonra paylaşılan diskte bu repo'nun bir uzaklığını kurmalı mıyım? – user1549303

+1

@ user1549303 - İşte biz böyle yapıyoruz. 'Git init' kullanarak yerel repo (' L: 'drive repo'yu) oluşturabilir ve' 'git clone --bare' '(ya da' git init -] kullanarak uzaktan (bizim 'v:' drive one)' ı oluşturabilirsin. -Tamam, ve sonra 'L:' den bir itme. – eykanal

+0

@eykanal - Ekibim şu anda eski, korkunç bir kaynak kontrol kütüphanesi kullanıyor ve git'e geçmeyi düşünüyoruz. Şu anki kütüphanemizin yapmamı istediği şey, bir dosyayı kimin kontrol ettiğini görmek ancak değişiklikleri kontrol etmeyi unutmak. Git ile tüm depolar yereldir, bu yüzden birisinin "v:" ye itmeyi unuttuğunu nasıl anlayabilirsiniz? –

1

Sen Sonra zorlayabilir

(git remote) İşinize yarayacak ya da değil bir şey buldum eğer

78

emin değil github ile ne benzer çekin ağ sürücüsüne başka uzaktan işaret eklemek, ama olabilir bir windows ağ sürücüsünde çok şey yapmak için nasıl bir writeup vardır: cmd istemi değişim itibaren

http://tony.halcyonlane.com/blog/2011/09/22/Using-git-at-work-on-a-Windows-network-drive/

sizin eşleştirilmiş sürücüye. Daha sonra git deposuna gitmek için CD'nize gidin. Daha sonra boş bir git deposu oluşturun. --bare seçeneğini kullanmazsanız, sorunlarınız olacak, bu yüzden bunu bırakmayın. Henüz bir yerel git depo yoksa yerel sürücüye geri giderek istediğiniz yere

$ git init --bare

Şimdi, o zaman yeni bir depo klonlayabilirsiniz. Eğer klonlamak zaman

$ c:

$ cd work/scripts

$ git clone file://g:\scripts

, otomatik olarak uzak sözde "kökeni" almak ve güvenli tutmak için sunucuya yerel olarak değişiklik yapmak her zaman itebilir.

$ git push origin master

Zaten git depo var ve sadece o zaman yerel git dir içinden yapabilirsiniz paylaşılan sürücüye dışarı itmek istiyorum.

$ git remote add origin file://g:\scripts

$ git push origin master

+0

Teşekkür ederim - Ev ağımdaki kişisel bir proje için tam olarak bunu yaptım. –

+0

Aşağıdaki adımları uyguladıktan sonra gitmem ama aşağıdaki hatalardan yararlanın: git push origin master hatası: spawn sh olamaz: Bu tür bir dosya veya dizin yok ölümcül: – NickStees

+0

çatallamıyor teşekkürler. Bu cevabı bulmak için uzun zaman aldı –