Geliştiriciler olarak, ana koda katılmadan önce kodun çeşitli kopyalarını yönetmeye ve kaydetmeye yabancı değiliz.
Çeşitli kod sürümlerini yönetmenin ve bunları test ettikten sonra ana kodla birleştirmenin daha iyi ve verimli bir yolunu tartışalım.
Gelelim:
Sürüm Kontrol Sistemlerine Giriş
Git'in bir sürüm kontrol sistemi olduğundan bahsetmiştik. Sürüm kontrol sistemi tam olarak nedir ve nasıl çalışır??
Sürüm kontrol sistemi, geliştiricilerin dosya değişikliklerini izlemesini sağlayan bir sistemdir. Sürüm kontrol sistemleri, çeşitli dosya sürümlerinin koleksiyonlarını ve her sürümde yapılan değişiklikleri oluşturarak çalışır. Dosyaların çeşitli sürümleri arasında sorunsuz bir şekilde geçiş yapmanızı sağlar.
Bir sürüm kontrol sistemi, dosya değişikliklerinin bir koleksiyonunu adı verilen bir konumda depolar bir depo.
Çoğu kullanım durumunda, sürüm kontrol sistemleri, ham metin içerdiklerinden kaynak kod dosyalarındaki değişiklikleri izlemeye yardımcı olur. Ancak, sürüm kontrol sistemleri metin dosyalarıyla sınırlı değildir; ikili verilerdeki değişiklikleri bile izleyebilirler.
Sürüm Kontrol Sistemleri Türleri
Çeşitli versiyon kontrol sistemleri vardır. İçerirler:
- Yerelleştirilmiş Sürüm kontrol sistemleri: Bu tür bir sürüm kontrol sistemi, dosya değişikliklerinin kopyalarını oluşturarak dosyaların çeşitli sürümlerini yerel olarak depolayarak çalışır.
- Merkezi sürüm kontrol sistemi: Merkezi sürüm kontrol sistemi, çeşitli dosya sürümlerine sahip merkezi bir sunucu içerir. Ancak geliştirici, dosyanın bir kopyasını yerel bilgisayarında tutmaya devam eder
- Dağıtılmış Sürüm kontrol sistemi: Dağıtık sürüm kontrol sistemi sunucu gerektirmez. Ancak, her geliştiricinin ana havuzun bir kopyasını klonlamasını içerir ve tüm dosyalardaki değişikliklere erişiminiz vardır. Popüler dağıtılmış VC sistemleri Git, Bazaar ve Mercurial'dır.
Git ile başlayalım.
Git'e Giriş
Git, Linux Kernel'in yaratıcısı Linus Torvalds tarafından geliştirilen dağıtılmış bir sürüm kontrol sistemidir. Başlangıçta Linux Çekirdeğinin geliştirilmesine yardımcı olmak için geliştirilen Git, güçlü ve kullanımı kolaydır. Birden fazla geliştiricinin aynı proje üzerinde aynı anda çalışmasına izin veren doğrusal geliştirmeyi destekler.
Git'in nasıl kurulacağını ve depoları yönetmek için nasıl kullanılacağını tartışalım:
Git Linux'a Nasıl Kurulur
Kullanmakta olduğunuz sisteme bağlı olarak Git varsayılan olarak kurulu olacaktır. Ancak, bazı sistemlerde yüklü olmayabilir. Durumunuz buysa, sisteminize kurmak için aşağıdaki komutları kullanın.
Debian/Ubuntu
sudo apt-get güncelleme && sudo apt-get upgrade -y sudo apt-get install git -yArch Linux
Git'i Arch'a yükleyin:
sudo pacman -S GitFedora/RedHat/CentOS
RHEL ailesine yükleyin:
sudo yum git'i yüklesudo dnf git'i kurun
Git Nasıl Yapılandırılır
Git'i kurduktan sonra, yerel ve uzak depolarla çalışmak için kullanabileceğiniz tüm komutlarına erişebileceksiniz.
Ancak, ilk kullanım için yapılandırmanız gerekir. Çeşitli değişkenleri ayarlamak için git config kullanacağız.
Ayarladığımız ilk yapılandırma, kullanıcı adı ve e-posta adresidir. Kullanıcı adını, e-posta adresini ve varsayılan metin düzenleyiciyi ayarlamak için gösterilen git config komutunu kullanın.
git config -- küresel kullanıcı.name myusername git config -global user.e-posta kullanıcıadı@e-posta.comgit config -- küresel çekirdek.editör vim
git config -list komutunu kullanarak git yapılandırmalarını şu şekilde görüntüleyebilirsiniz:
git yapılandırma --listekullanıcı.isim=kullaniciadim
kullanıcı[email protected]
çekirdek.editör=vim
Depolar Nasıl Kurulur
Git'ten bahsedemeyiz ve repo veya depo teriminden bahsetmeyiz.
Genellikle depo adı verilen bir depo, sürüm kontrol sistemi tarafından izlenen ilgili değişiklikleriyle birlikte dosya ve dizinleri toplar.
Bir havuzdaki değişiklikler, bir dosyaya veya dizine uygulanan değişikliklerin basit anlık görüntüleri olan taahhütler tarafından yönetilir veya izlenir.
Taahhütler, değişiklikleri uygulamanıza veya depodaki belirli bir değişikliğe geri dönmenize izin verir.
Şimdi bir Git deposunun nasıl kurulacağını tartışalım.
Git repo olarak kullanmak ve değişiklikleri izlemek istediğiniz bir proje dizininiz olduğunu varsayalım. Şu komutu kullanarak başlatabilirsiniz:
git initgit init komutunu çalıştırdıktan sonra Git, dizini bir havuz olarak başlatır ve bir .tüm yapılandırma dosyalarını depolamak için kullanılan git dizini.
Git'i kullanarak değişiklikleri izlemeye başlamak için Git add komutunu kullanarak eklemeniz gerekir. Örneğin, dosyayı eklemek için yeniden başlatın.c
git yeniden başlatma ekle.cBu dizindeki tüm dosyaları eklemek ve değişiklikleri izlemeye başlamak için şu komutu kullanın:
git ekle .Dosyaları ekledikten sonraki adım, bir taahhüt aşamasına geçmektir. Daha önce belirtildiği gibi, taahhütler bir depodaki dosyalarda yapılan değişiklikleri izlemeye yardımcı olur.
git commit komutunu kullanarak dosyalardaki değişiklikleri gösteren mesajı ekleyebilirsiniz.
Örneğin, ilk taahhüt için bir mesaj şuna benzer olacaktır:
git commit -m “İlk Taahhüt.”NOT: Açıklayıcı ve anlamlı git mesajları eklemek, havuzu kullanan diğer kullanıcıların dosya değişikliklerini tanımlamasına yardımcı olur.
gitignore
Ana depoya dahil etmek istemediğiniz bazı dosyalarınız ve dizinleriniz olduğunu varsayalım. Örneğin, kullandığınız geliştirme için yapılandırma dosyalarınız olabilir.
Bunu başarmak için, kullanmanız gerekir .gitignore dosyası. İçinde .gitignore dosyası, Git'in izlememesi gereken tüm dosyaları ve dizinleri ekleyebilirsiniz.
Bir örnek .gitignore dosyası genellikle şöyle görünür:
.DS_Storedüğüm_modülleri/
tmp/
*.günlük
*.fermuar
.fikir/
iplik.kilit paketi.json
.tmp*
Git Uzak Depoları
Git, yerel depoların kapsamının dışına çıkan güçlü bir sistemdir. GitHub, Bitbucket ve Gitlab gibi hizmetler, geliştiricilerin git depolarını kullanarak projelerde barındırabileceği ve işbirliği yapabileceği uzak depolar sunar.
Bazı uzaktan git hizmetleri birinci sınıf olsa da (birçok ücretsiz hizmet vardır), çekme istekleri gibi harika araçlar ve işlevler ve sorunsuz geliştirme sağlayan diğer pek çok işlev sunarlar.
NOT: Kendi kendine barındırılan bir git hizmeti de oluşturabilirsiniz. Bunu nasıl başaracağınızı öğrenmek için Gogs eğitimimize bakın.
Şimdi uzak depolarla çalışmanın çeşitli yollarına bakalım.
Uzak bir depoyu klonlama
Uzak depolarla çalışmanın popüler bir yolu, uzak depodaki tüm dosyaları yerel bir depoya kopyalamaktır; klonlama adı verilen bir süreç.
Bunu yapmak için git klon komutunu ve ardından deponun URL'sini şu şekilde kullanın:
git klonu https://github.com/linuxhint/kod.gitGithub gibi servislerde İndir seçeneği altında sıkıştırılmış depoyu indirebilirsiniz.
Depodaki dosyaların durumunu görüntülemek için git status komutunu kullanın:
git durumuBu komut, depodaki dosyaların değişip değişmediğini size söyleyecektir.
Uzaktan kumandadan yerel depoyu güncelle
Klonlanmış bir deponuz varsa, uzak depodaki tüm değişiklikleri alabilir ve Git fetch komutuyla bunları yerel depoyla birleştirebilirsiniz:
git getirYeni bir uzak depo oluşturma
Komut satırından bir uzak havuz oluşturmak için git remote add komutunu şu şekilde kullanın:
git uzaktan new_repo ekle https://github.com/linuxhint/new_repo.gitYerel repoyu uzaktan kumandaya gönderme
Tüm değişiklikleri yerel bir havuzdan uzak bir havuza göndermek için git push komutunu ve ardından uzak havuzun URL'sini veya adını kullanabilirsiniz. İlk olarak, dosyaları eklediğinizden emin olun, şu şekilde bir taahhüt mesajı ekleyin:
git ekle .git commit -m “Kapatmak için yeni işlev eklendi. “ git push kaynağı https://github.com/linuxhint/kod.git
Uzak bir depoyu silme
Komut satırından uzak bir depoyu silmek istiyorsanız, git remote rm komutunu şu şekilde kullanın:
git uzak rm https://github.com/linuxhint/new_repo.gitSonuç
Git sürüm kontrol sistemi kurmanın temellerini ve bunun yerel ve uzak depolarla çalışmak için nasıl kullanılacağını ele aldık.
Yeni başlayanlar için uygun olan bu kılavuz hiçbir şekilde eksiksiz bir referans materyali değildir. Bu eğitimde kapsanmayan birçok özellik olduğu için belgeleri göz önünde bulundurun.