Git
Chapters ▾ 2nd Edition

A3.5 Ek bölüm C: Git Komutları - Projeleri Paylaşma ve Güncelleme Komutları

Projeleri Paylaşma ve Güncelleme Komutları

Git’te ağa erişen çok fazla komut yoktur, komutların neredeyse tamamı yerel veritabanı üzerinde çalışır. Çalışmanızı paylaşmaya veya değişiklikleri başka bir yerden almaya hazır olduğunuzda, uzak repolarla ilgilenen birkaç komut vardır.

git fetch

git fetch komutu uzak bir repoyla iletişim kurar, o repoda bulunan ama sizin mevcut reponuzda olmayan tüm bilgileri getirir ve bunları yerel veritabanınızda saklar.

Bu komuta ilk olarak Uzak Sunucudan Getirme ve Çekme bölümünde baktık ve kullanımına ilişkin örnekleri Uzak Dallar bölümünde incelemeye devam ettik.

Bunu ayrıca Projenin Gelişiminde Rol Almak bölümündeki örneklerin birçoğunda da kullandık.

Bunu Birleştirme İsteği Referansları bölümünde, varsayılan alanın dışındaki tek bir spesifik referansı getirmek için kullandık ve Demetleme (Bundling) bölümünde bir paketten nasıl getirileceğini gördük.

git fetch 'in Refspec bölümündeki varsayılandan biraz farklı bir şey yapmasını sağlamak için çok özel refspec’ler ayarladık.

git pull

git pull komutu temel olarak git fetch ve git merge komutlarının bir birleşimidir; burada Git, belirttiğiniz uzak repodan farklılıkları alır ve onu hemen bulunduğunuz dalla birleştirmeye çalışır.

Bunu hızlı bir şekilde Uzak Sunucudan Getirme ve Çekme bölümünde tanıttık ve Uzak Sunucunun İncelenmesi bölümünde, komutu çalıştırdığınızda nelerin birleşeceğini nasıl göreceğinizi gösterdik.

Ayrıca Yeniden Temelleme Yaparken Dikkat Edilmesi Gerekenler bölümünde yeniden temelleme zorluklarına yardımcı olmak için, onu nasıl kullanacağımızı da gösterdik.

Uzak Dallara Geçmek bölümünde değişiklikleri tek seferlik bir şekilde almak için bunun bir URL ile nasıl kullanılacağını gösterdik.

Son olarak Katkıları İmzalama bölümünde, çektiğiniz katkıların GPG imzalı olup olmadığını doğrulamak için --verify-signatures seçeneğini kullanabileceğinizi belirttik.

git push

git push komutu başka bir repoyla iletişim kurmak, yerel veritabanınızın uzaktaki veritabanından farkını hesaplamak ve ardından aradıki farkı diğer repoya itmek için kullanılır. Bu komut doğal olarak diğer repoya yazma erişimi gerektirir ve bu nedenle de bir kimlik doğrulaması yapılır.

İlk önce Kodlarınızı Uzak Sunucuya İtmek bölümünde git Push komutunu tanıttık. Burada bir dalı uzak bir repoya göndermenin temellerini ele aldık. İtme bölümünde belirli dallara itme konusunda biraz daha derinlere indik ve Dalları Takip bölümünde izlenen dalları otomatik olarak itme yapılacak şekilde nasıl ayarlayacağını gösterdik. Uzak Dalları Silmek bölümünde sunucudaki bir dalı silmek için git push ile --delete bayrağını kullandık.

Projenin Gelişiminde Rol Almak boyunca, dallardaki çalışmayı birden fazla uzak repo aracılığıyla paylaşmak için git push komutunu kullanmanın birkaç örneğini gösterdik.

Etiketleri Paylaşma bölümünde --tags seçeneğiyle oluşturduğunuz etiketleri paylaşmak için nasıl kullanılacağımızı anlattık.

Alt Modül Değişikliklerini Yayınlama bölümünde, süper projeyi göndermeden önce tüm alt modül çalışmalarımızın yayınlandığını kontrol etmek için --recurse-submodules seçeneğini kullandık ki alt modülleri kullanırken bu gerçekten yararlı olur.

Diğer İstemci Kancaları bölümünde, bir itmeye izin verilmesi gerektiğini doğrulamak için bir itme tamamlanmadan önce çalıştırılacak şekilde ayarlayabileceğimiz bir komut dosyası olan `pre-push kancasından kısaca bahsettik.

Son olarak Refspec’leri İtmek bölümünde, normalde kullanılan genel kısayollar yerine tam bir refspec ile itme işlemine baktık. Bu, hangi çalışmayı paylaşmak istediğiniz konusunda çok spesifik davranabilmenize yardımcı olabilir.

git remote

git remote komutu, uzak repolara ilişkin kayıtlarınız için bir yönetim aracıdır. Uzun URL’leri ``origin`` gibi kısaltılmış olarak kaydetmenize olanak tanır, böylece bunları her zaman yazmanıza gerek kalmaz. Bunlardan birkaçına sahip olabilirsiniz ve bunları eklemek, değiştirmek ve silmek için git remote komutu kullanılır.

Bu komut, listeleme, ekleme, kaldırma ve yeniden adlandırma da dahil olmak üzere Uzak Repo ile Çalışmak bölümünde ayrıntılı olarak ele alınmıştır.

Bu komut kitabın hemen hemen her bölümünde kullanılmakla birlikte, her zaman standart git remote add <isim> <link> biçiminde yazılmıştır.

git archive

git archive komutu, projenin belirli bir pozunun arşiv dosyasını oluşturmak için kullanılır.

git archive komutunu Bir Sürüm Hazırlama bölümünde paylaşmak üzere olduğumuz bir projenin tarball’ını oluşturmak için kullandık.

git submodule

git submodule komutu normal bir repodaki harici repoları yönetmek için kullanılır. Bu, kütüphaneler veya diğer türde paylaşılan kaynaklar için de olabilir. git submodule komutu, bu kaynakları yönetmek için çeşitli alt komutlara (add, update, sync, vb) sahiptir.

Bu komuttan yalnızca Alt Modüller bölümünde bahsedilmiş ve tamamı anlatılmıştır.

scroll-to-top