git init
git clone <depo-url>
Örnek:
git clone https://github.com/kullaniciadi/depo-adi.git
git status
git add <dosya-adi>
Tüm dosyaları ekleme:
git add .
git commit -m "Kayıt mesajınız"
git log
Daha özet bir görünüm için:
git log --oneline
git diff
git branch
git branch <dal-adi>
git checkout <dal-adi>
git checkout -b <dal-adi>
git merge <dal-adi>
git branch -d <dal-adi>
git remote add <uzak-ad> <depo-url>
Örnek:
git remote add origin https://github.com/kullaniciadi/depo-adi.git
git remote -v
git fetch <uzak-ad>
git pull <uzak-ad> <dal-adi>
git push <uzak-ad> <dal-adi>
git checkout -- <dosya-adi>
git reset HEAD <dosya-adi>
git commit --amend
git reset --hard <kayit-hash>
git revert <kayit-hash>
git rebase -i <kayit-hash>
git cherry-pick <kayit-hash>
git tag <etiket-adi>
git stash
git stash apply
git clean -f
git config --global user.name "Adınız"
git config --global user.email "e-posta@ornek.com"
git config --global core.editor "vim"
git config --list
Diyelim ki "SuperApp" adında yeni bir proje başlatan bir geliştiricisisiniz. Versiyon kontrolü için Git kullanmaya karar verdiniz. Git kullanarak bu projeyi kurma ve yönetme sürecini inceleyelim.
Önce, projeniz için yeni bir dizin oluşturun ve bir Git deposu başlatın:
mkdir SuperApp
cd SuperApp
git init
Git yapılandırmanızı ayarlayın:
git config --global user.name "Adınız"
git config --global user.email "mailiniz@ornek.com"
Projeniz için birkaç başlangıç dosyası oluşturun:
echo "# SuperApp" > README.md
echo "console.log('Merhaba, SuperApp!');" > app.js
echo "body { font-family: Arial, sans-serif; }" > styles.css
Deponuzun durumunu kontrol edin:
git status
Bu dosyaların izlenmediğini göreceksiniz.
Bu dosyaları hazırlama alanına ekleyin:
git add README.md app.js styles.css
İlk commit'inizi yapın:
git commit -m "İlk commit: README, app.js ve styles.css eklendi"
Kullanıcı kimlik doğrulaması için yeni bir özellik eklemek istiyorsunuz. Bu özellik için yeni bir dal oluşturun:
git checkout -b ozellik/kullanici-kimlik-dogrulama
Kullanıcı kimlik doğrulaması için yeni bir dosya ekleyin:
echo "function girisYap() { /* TODO: Giriş mantığını uygula */ }" > kimlik.js
app.js dosyasını yeni kimlik.js dosyasını içerecek şekilde değiştirin:
echo "import './kimlik.js';" >> app.js
echo "// TODO: Kullanıcı kimlik doğrulamasını uygula" >> app.js
Bu değişiklikleri hazırlayın ve commit'leyin:
git add kimlik.js app.js
git commit -m "Kullanıcı kimlik doğrulaması için temel yapı eklendi"
Ana dala geri dönün:
git checkout main
Farklı bir özellik için başka bir dal oluşturun:
git checkout -b ozellik/veri-gorsellestirme
Bu özellik için yeni bir dosya ekleyin:
echo "function grafikOlustur() { /* TODO: Grafik oluşturmayı uygula */ }" > grafik.js
Hazırlayın ve commit'leyin:
git add grafik.js
git commit -m "Veri görselleştirme için temel yapı eklendi"
Ana dala geri dönün ve kullanıcı kimlik doğrulama özelliğini birleştirin:
git checkout main
git merge ozellik/kullanici-kimlik-dogrulama
Şimdi veri görselleştirme özelliğini birleştirmeyi deneyin:
git merge ozellik/veri-gorsellestirme
Her iki dal da app.js'i değiştirdiyse, bu bir birleştirme çakışması oluşturabilir.
app.js'i açın ve çakışmayı manuel olarak çözün. Sonra:
git add app.js
git commit -m "ozellik/veri-gorsellestirme birleştirildi ve çakışmalar çözüldü"
Bir uzak depo ekleyin (GitHub'da bir tane oluşturduğunuzu varsayarak):
git remote add origin https://github.com/kullaniciadiniz/SuperApp.git
Değişikliklerinizi uzak depoya gönderin:
git push -u origin main
Veri görselleştirme özelliği için, dalı gönderin ve bir çekme isteği oluşturun:
git checkout ozellik/veri-gorsellestirme
git push -u origin ozellik/veri-gorsellestirme
Ardından GitHub'a gidin ve bu dal için bir çekme isteği oluşturun.
Yeni bir takım üyesi depoyu şöyle klonlar:
git clone https://github.com/kullaniciadiniz/SuperApp.git
cd SuperApp
Her gün çalışmaya başlamadan önce, değişiklikleri getirin ve çekin:
git fetch origin
git pull origin main
Bir hata düzeltmesi için yeni bir dal oluşturun:
git checkout -b hata-duzeltme/giris-hatasi
Değişiklikler yapın, commit'leyin ve gönderin:
# kimlik.js'de değişiklikler yapın
git add kimlik.js
git commit -m "Giriş hatası yönetimi düzeltildi"
git push -u origin hata-duzeltme/giris-hatasi
README'yi güncellemeyi unuttuğunuzu fark ettiniz. Son commit'i düzeltin:
echo "## Kullanıcı Kimlik Doğrulama" >> README.md
git add README.md
git commit --amend
Diyelim ki özellik dalınızdaki son 3 commit'i birleştirmek istiyorsunuz:
git checkout ozellik/kullanici-kimlik-dogrulama
git rebase -i HEAD~3
Etkileşimli rebase düzenleyicisinde, birleştirilecek commit'leri işaretleyin.
Tüm özellikleri birleştirip hataları düzelttikten sonra, bir sürüm etiketi oluşturun:
git tag -a v1.0.0 -m "Sürüm 1.0.0"
git push origin v1.0.0
Bir hata yaptıysanız ve değişiklikleri atmak istiyorsanız:
git checkout -- kimlik.js
Yanlışlıkla bir dosyayı hazırlama alanına eklediyseniz:
git reset HEAD styles.css
Bir commit'i geri almanız gerekiyorsa:
git revert <commit-hash>
Özellik dallarını birleştirdikten sonra, onları silin:
git branch -d ozellik/kullanici-kimlik-dogrulama
git branch -d ozellik/veri-gorsellestirme
git push origin --delete ozellik/kullanici-kimlik-dogrulama
git push origin --delete ozellik/veri-gorsellestirme
İzlenmeyen dosyaları kaldırın (bunu kullanırken dikkatli olun!):
git clean -n # Kuru çalıştırma
git clean -f # Gerçekten dosyaları kaldır
Sık kayıt yapın: Tek bir sorunu veya özelliği ele alan küçük, odaklanmış kayıtlar yapın.
Anlamlı kayıt mesajları yazın: Hangi değişikliklerin yapıldığını ve neden yapıldığını açıklayan net ve açıklayıcı kayıt mesajları kullanın.
Dalları kullanın: Her özellik veya hata düzeltmesi için yeni bir dal oluşturarak çalışmanızı düzenli ve izole tutun.
Göndermeden önce çekin: Çakışmaları önlemek için kendi değişikliklerinizi göndermeden önce her zaman uzak depodan en son değişiklikleri çekin.
Değişikliklerinizi gözden geçirin: Kaydetmeden önce değişikliklerinizi gözden geçirmek için git diff
ve git status
kullanın.
gitignore kullanın: Git tarafından izlenmemesi gereken dosya ve dizinleri (örneğin, derleme ürünleri, geçici dosyalar) hariç tutmak için bir .gitignore dosyası oluşturun.
Deponuzu temiz tutun: Düzenli olarak birleştirilmiş dalları silin ve izlenmeyen dosyaları kaldırmak için git clean
kullanın.
Anlamlı dal isimleri kullanın: Dallarınızı açıklayıcı bir şekilde adlandırın, örneğin "ozellik/kullanici-kimlik-dogrulama" veya "hata-duzeltme/giris-hatasi".
Özellik dallarını rebase edin: Özellik dallarınızı ana dalla güncel tutmak ve temiz bir geçmiş elde etmek için git rebase
kullanın.
Sürümler için etiketler kullanın: Önemli kayıtları, özellikle sürümler için, daha sonra kolayca referans almak üzere etiketleyin.
2024 © Tüm hakları saklıdır - buraxta.com