Uzak Git Şubesi nasıl kontrol edilir
Uzak bir havuzdan bir dal çekmek için, "git fetch" komutunu, ardından uzak dalları listelemek için "git Branch -r" komutunu kullanın. İstediğiniz dalı seçin ve “git checkout -b yeni-Branch-adı orijin / uzak-Şube-adı” biçimindeki komutu kullanın. Birden çok depo kullanıyorsanız, checkout komutunun "ana" bölümünü şubeyi teslim almak istediğiniz uzaktan kumandanın adıyla değiştirin.
Geliştirme ekibiniz Git kullanıyorsa, sonunda başka birinin uzak bir havuzdan şube olarak çalıştığını doğrulamanız gerekir. Git'teki çoğu şube yordamı gibi, uzak bir şubeye geçmek aslında çok basittir.
Git, şubeler ve uzaktan kumandalar
Felsefe Jet Çok çatal yapıyor. Şubeler, ana kod tabanını değiştirmeden geliştirmeye izin verir. Test edilen yeni kodunuzun hazır olduğundan emin olduğunuzda, yeni şubenizi başka bir şubeyle birleştirirsiniz. Genellikle bu, ana veya ana daldır, ancak herhangi iki dalı birleştirebilirsiniz.
Bu esneklik ve Git'in dallanmaları ve birleştirmeleri hafif ve hızlı bir şekilde işlemesi nedeniyle, çatallanma dönüştürüldü. Eski sürüm kontrol sistemlerinde dallanma büyük bir sorundu. Dallanma ve birleştirme yavaştı ve hataya açıktı. Git, geliştiricilere birçok farklı iş akışını desteklemek için kullanılan kolay ve hızlı çatallar verdi.
Git ile bir geliştirme ekibinin parçası olarak çalışır veya gönüllü olursanız, her yazılım mühendisinin bilgisayarından uzakta "merkezi" bir Git deposuna sahip olursunuz. Bu, uzak depo veya yalnızca "uzak" olarak bilinir. Bir ödeme yapıldığında taahhütlerin ve değişikliklerin yerel deponuza gönderildiği yer burasıdır.
Tabii ki, diğer geliştiricilerin de yaptığı şey bu. Bu, işbirliği yapmayı kolaylaştırır. Başka bir geliştiricinin çalışmasına erişmeniz gerekiyorsa, kodunu uzak havuzdaki bir daldan almanız yeterlidir. İşletmenize erişmeleri gerekiyorsa, yerel bir şubeyi izleyen depodaki bir şubeden jetonunuzu alacaklardır.
Git'te, bir geliştirme projesinin birden çok uzaktan kumandası olabilir. Ancak, yerel şube yalnızca bir uzak şubeyi izleyebilir. Bu nedenle, uygun uzaktan kumandayla çalıştığınız sürece, uzak bir şubeyi birden çok uzaktan kumandayla kontrol etmek, tek bir uzaktan kumanda kullanmakla aynıdır.
Yerel satış ortaklarınızı bulun
Ad çakışmalarından kaçınmanız gerekir. Ödeme yapacağınız uzak şubeyle aynı ada sahip bir yerel şubeniz varsa, iki seçeneğiniz vardır. Yerel şubenizi yeniden adlandırabilir ve uzak şubeyi kontrol edebilirsiniz. Bu şekilde, uzak şubeyi izleyen yerel şubeniz, uzak şube ile aynı ada sahip olur. Veya uzak dalı kontrol edip Git'e yeni bir adla yerel bir izleme dalı oluşturmasını söyleyebilirsiniz.
Yerel deponuzdaki şube adlarını bulmak için git şubesi komutunu kullanın.
git şubesi
Bu yerel deponun bir ana şubesi ve diğer üç şubesi vardır. Yıldız işareti mevcut dalı gösterir. Şubeden şubeye gitmek, hangi şubeyle çalışmak istediğinizi kontrol etmeyi gerektirir.
git checkout yeni özelliği
git durumu
İlk komut bizim için dalı değiştirir, böylece "yeni özellik" mevcut daldır. Git status komutu bizim için bunu kontrol eder.
Şubeler arasında gidip gelebilir, yeni değişiklikler yapabilir, uzaktan kumandadan güncellemeler alabilir ve yerel güncellemeleri uzaktan kumandaya gönderebiliriz.
Uzak bir şubeyi doğrulama
Uzak depoda makinemizde olmayan bir şube var. Mary adlı bir geliştirici, yeni bir özellik oluşturdu. Programın o sürümünü yerel olarak oluşturabilmek için o uzak şubeye geçmek istiyoruz.
Bir getirme işlemi yaparsak, Git meta verileri uzak depodan çeker.
git getir
Bu, Mary'nin şubesini uzak depoya itmesinden bu yana yaptığımız ilk getirme olduğundan, bize "origin/mary-feature" adında yeni bir şube olduğu söylendi. Bir projeye eklenen ilk uzak havuz için varsayılan ad "ebeveyn"dir.
Bu mesajı görsek de görmesek de Git'ten her zaman uzak depodaki dalları listelemesini isteyebiliriz.
-r (uzak) seçeneği, Git'e uzak depoda hangi dalların olduğunu bildirmesini söyler.
git şube -r
Burada dikkat edilmesi gereken nokta, Git'in uzaktan kumandanın meta verilerinin yerel kopyasını kontrol etmesidir. Bu nedenle, meta verilerin yerel kopyasının güncel olduğundan emin olmak için git fetch komutunu kullanıyoruz.
İstediğimiz şubeyi belirledikten sonra devam edip kontrol edebiliriz. -b (branch) seçeneği ile git checkout komutunu, ardından yerel şube için kullanacağımız ismi ve ardından uzak şubenin adını kullanıyoruz.
git checkout -b mary-özellik kaynağı/mary-özellik
Uzak şubeyi taradığımızı ve uzak şubedeki değişiklikleri takip edecek yerel bir şube oluşturduğumuzu görebiliriz.
git şubesi
Yeni yerel şubemiz artık mevcut faaliyet gösteren şubemizdir.
İsim çakışmalarıyla başa çıkma
Uzak şubeyle aynı ada sahip bir yerel şubeniz varsa, uzak şubeyi kontrol etmeden önce yerel şubeyi yeniden adlandırabilir veya uzak şubeyi kontrol edip farklı bir yerel şube adı belirtebilirsiniz.
Uzak şubeyi farklı bir isimle yerel bir şubeye sürüklemek için daha önce kullandığımız komutun aynısını kullanabilir ve yeni bir yerel şube adı seçebiliriz.
git checkout -b mary-testi kaynağı/mary-özelliği
Bu, o şubenin yerel taahhütlerini takip edecek olan "mary-test" adlı yerel bir şube oluşturur. Ödemeler uzaktaki "origin/mary-feature" şubesine gidecektir.
Bu muhtemelen yerel ad çakışmalarını halletmenin en iyi yoludur. Yerel ve uzak şube adını gerçekten aynı tutmak istiyorsanız, uzaktan kumandayı kontrol etmeden önce yerel şubeyi yeniden adlandırmanız gerekecektir. Bir dalı yeniden adlandırmak Git'te önemsiz bir konudur.
git şubesi -m mary-özelliği yaşlı-mary-branch
Artık uzak "origin/mary-feature" şubesinden çıkış yapmaktan kurtuldunuz.
Birden çok uzak depoyu yönetme
Yapılandırılmış birden çok uzak deponuz varsa, uzak şubeyi kontrol ederken uygun havuzla çalıştığınıza dikkat etmeniz gerekir.
Uzak havuzlarınızı listelemek için -v (görüntüleme) seçeneğiyle uzak komutu kullanın.
git uzak -v
Kullanılabilir tüm şubeleri görmek için tüm uzaktan kumandalarımızdan meta verileri almamız ve ardından uzak şubeleri listelememiz gerekiyor.
git getir - hepsi
git şubesi -- hepsi
İstediğimiz dalı "parent" uzaktan kumandada görebiliriz. Kontrol komutu, daha önce kullandığımız formattadır. "Origin" uzak adının yanı sıra "mary-feature" şube adını da belirtmemiz gerekiyor.
git checkout -b mary-özellik kaynağı/mary-özellik
dışarı çıkmadan önce
Ödeme yapmadan önce birkaç şeyi aklınızda bulundurun ve iyi olacaksınız.
Ad çakışmalarını önlediğinizden emin olun. Uzak şubeyle aynı ada sahip bir yerel şubeniz varsa, yerel şubeyi yeniden adlandırmaya veya uzak şubeyi takip etmek için farklı bir ada sahip bir şube oluşturmaya karar verin.
Birden çok uzak depo kullanıyorsanız, doğru uzaktan kumandayı kullandığınızdan emin olun.