Ana içeriğe geç

Git Init: Bir Git Deposu Nasıl Başlatılır ve Kurulur

Bu başlangıç dostu rehberde git init ile bir Git deposunu kurmayı, bir uzak depoya bağlanmayı, ayarları yapılandırmayı ve yaygın sorunları gidermeyi öğrenin.
· 15 dk. oku

Yapay Zeka ile Keşfedin

Hiç yanlışlıkla bir dosyayı sildiğiniz ya da kodunuzun üzerine yazıp geri döndürmenin bir yolunu bulamadığınız oldu mu? Sürüm kontrolü olmadan bu tür hatalar yıkıcı olabilir. İşte tam bu noktada git init devreye girer—proje klasörünüzü bir Git deposuna dönüştürür ve her değişikliğin izlenebilir ve geri alınabilir olmasını sağlar. 

Bu eğitimde Git’i nasıl kuracağınızı gösterecek, kendi yolculuğumdan kişisel ipuçları paylaşacak ve en baştan sağlam bir iş akışı oluşturmanıza yardımcı olacağım.

Git Init Nedir?

git init komutu, sürüm kontrolü yolculuğunuzun başlangıç noktasıdır. Çalıştırdığınızda, Git proje dizininizin içinde gizli bir .git klasörü oluşturur; bu klasör yapılandırma verilerini, commit geçmişini ve değişikliklerinizi izlemek için gereken tüm metaveriyi saklar. 

Her değişiklik kayda geçtiği için dallanabilir, birleştirebilir ve güvenle iş birliği yapabilirsiniz—projenizin eksiksiz geçmişinin her zaman sadece bir komut uzakta olduğunu bilerek.

Git başlatma süreci

Görsel: Yazar

Git Init Nasıl Kullanılır

İleri konulara geçmeden önce, uygulamada git init kullanımını anlamak önemlidir.

git init'in temel kullanımı

Sıfırdan yeni bir Git deposu oluşturmak için şu adımları izleyin:  

  • Terminalinizi açın: Tercih ettiğiniz komut satırı arayüzünü başlatın.
  • Proje dizininize gidin:
cd /path/to/your/project

Bu, mevcut klasörünüzü izlemek istediğiniz klasöre değiştirir.

  • Depoyu başlatın: 
git init

Bu komutu çalıştırdıktan sonra gizli bir .git klasörü oluşturulur. Bu klasör, Git’in izleme bilgilerinin tamamını saklar.

  • Depo durumunu doğrulayın:
git status

Bu aşamada Git kuruldu ancak henüz hiçbir dosyayı izlemiyor.

Mevcut bir projeyle depo başlatma

Henüz sürüm kontrolünde olmayan projeler için, Git’i başlatıp aşağıdaki gibi değişiklikleri izlemeye başlayabilirsiniz:

  • Proje dizininize gidin:
cd /path/to/your/project
  • Projeyi bir Git deposuna dönüştürün:
git init

Daha önce belirtildiği gibi, yukarıdaki komut Git izlemesini etkinleştiren gizli .git klasörünü oluşturur.

  • Dosyalarınızı aşamaya alın: git init dosyaları otomatik olarak izlemez; onları eklemek için:
git add .
  • Dosyalarınızı commit’leyin: İlk anlık görüntüyü kaydetmek için şunu çalıştırın:  
git commit -m "Initial commit"

Bu işlem, yönetilmeyen bir projeyi eksiksiz bir sürüm geçmişine sahip—yeni geliştirme ve iş birliğine hazır—bir projeye dönüştürür.

Git'i yapılandırma (gerekirse)

"Author Identity Unknown" hatasıyla karşılaşırsanız, Git sizi tanımıyor demektir. Bunu düzeltmek için kullanıcı kimliğinizi yapılandırın:

  • Git kullanıcı bilgilerini ayarlayın: 
git config --global user.email "[email protected]"
git config --global user.name "Your Name"

--global kullanmak, bu ayarları makinenizdeki tüm depolara uygular. Bunu atlamak, kimliği yalnızca mevcut depo için ayarlar.

  • Yapılandırmanızı doğrulayın:  
git config --global user.email
git config --global user.name
  • Commit’i yeniden deneyin:  
git commit -m "First Commit"

Git’i ilk kullanmaya başladığımda bu hatayla karşılaştım—kimliğimi ayarlamak sorunu çözdü.

PowerShell'de git add . ile dosyaları aşamaya alıp git commit -m "first commit" ile commit ettikten sonra başarılı ilk Git commit'i.

İlk Git commit’i PowerShell’de başarıyla çalıştı.

Uzak bir depoya bağlanma

Yerelde bir Git deposu başlattıktan sonra, onu bir uzak depoya (ör. GitHub, GitLab, Bitbucket) bağlayarak yedeklemek veya başkalarıyla iş birliği yapmak isteyebilirsiniz.

  • Bir uzak depo ekleyin: Yerel deponuzu uzak bir depoya bağlamak için şunu kullanın:
git remote add origin <repository-url>

<repository-url> değerini uzak deponuzun URL’si ile değiştirin. origin, uzak depo için varsayılan takma addır ancak herhangi bir ad kullanabilirsiniz.

  • Bağlantıyı şu komutla doğrulayabilirsiniz:
git remote -v
  • Değişikliklerinizi uzak depoya gönderin:
# İlk commit'i gönderin ve uzak dalı takip edin
git push -u origin $(git branch --show-current)  # 'main' veya 'master' için çalışır 

Yukarıdaki komut, mevcut dalı gönderir ve uzak dalı takip edecek şekilde ayarlar.

$(git branch --show-current) özelliğini desteklemeyen eski bir Git sürümü kullanıyorsanız şunu kullanın:

git push -u origin main  # Varsayılan dalınıza bağlı olarak 'master' da olabilir  

Projenizde çalışmaya devam ederken, bir ekiple iş birliği yaparken farklı dallardaki değişiklikleri birleştirmeniz gerekecek. Birleşmeleri etkili bir şekilde nasıl yöneteceğinizi bu Git merge eğitimi ile öğrenin.

Kimlik doğrulama ve erişim

GitHub, GitLab veya Bitbucket’a gönderim yaparken kimlik doğrulamanız gerekebilir. Kurulumunuza bağlı olarak şunları yapabilirsiniz:

  • HTTPS kimlik doğrulaması yerine SSH anahtarları kullanın (güvenlik için önerilir):
git remote set-url origin [email protected]:your-username/your-repo.git
  • HTTPS kullanırken parola yerine bir Kişisel Erişim Belirteci (PAT) kullanın. GitHub için, parolayı belirteçle değiştirin:
git push https://[email protected]/your-repo.git

Uzak bir depoya bağlanmak benim için bir dönüm noktasıydı—yerel çalışmamın güvenle yedeklendiğini ve iş birliğine hazır olduğunu görmek içimi rahatlattı. Ayrıca, yerel makinem arızalansa bile geçmişimin korunduğunu bilmek sürüm kontrolüne olan güvenimi artırdı.

Git Init ile Gelişmiş Seçenekler

Git kurulumlarını özelleştirmek isteyenler için gelişmiş seçenekler ek esneklik sağlar.

Salt depo (bare repository) başlatma

Geliştiricilerin değişikliklerini göndereceği ama dosyaları doğrudan düzenlemeyeceği bir Git sunucusu kuruyorsanız, salt bir depoya ihtiyaç duyarsınız. Salt bir depo, çalışma dizini olmadan yalnızca sürüm kontrol verilerini içerir. Genellikle uzak depolar için kullanılır:

git init --bare <repository-name>

Salt depolar sıklıkla GitOps iş akışlarında kullanılır; burada altyapı ve uygulama dağıtımı Git üzerinden yönetilir. GitOps’un yazılım teslimini nasıl otomatikleştirip sadeleştirdiğini öğrenmekle ilgileniyorsanız, bu GitOps rehberine göz atın.

Belirli bir yapılandırmayla başlatma

Başlangıçtan itibaren özel Git kancalarına veya yapılandırma dosyalarına ihtiyacınız varsa, özel bir şablonla başlatın:

git init --template=<template-directory>

Bir keresinde gerekli kancaları otomatik olarak yüklemek için özel bir şablon kullandım; bu da ekibimizin dağıtım sürecini sadeleştirdi.

Git Init Kullanımı için En İyi Uygulamalar

Git ile doğru adımla başlamak, ileride size zaman ve sorun tasarrufu sağlayabilir.

Proje yapınızı düzenleme

git init çalıştırmadan önce dosyalarınızı mantıklı bir klasör yapısında düzenleyin—kod, dokümantasyon ve varlıkları ayırın. 

Devraldığım bir projede, birden fazla alt projenin dosyaları birbirine karışmıştı; bu da birleştirme çakışmalarına ve kafa karışıklığına yol açıyordu. Her şeyi net tanımlanmış klasörlere yeniden düzenleyip depoyu yeniden başlatarak ve uygun bir .gitignore kurarak iş akışını büyük ölçüde iyileştirdik.

.gitignore dosyasını erken ekleme

Depoyu başlattıktan hemen sonra, gereksiz dosyaların izlenmesini önlemek için bir .gitignore dosyası oluşturun:

touch .gitignore

Ardından, şu kuralları içerecek şekilde düzenleyin:

# Bağımlılık klasörlerini ve günlük dosyalarını yoksay
node_modules/
*.log
.DS_Store  # macOS sistem dosyası
Thumbs.db  # Windows sistem dosyası

Bu adım, şişkin commit geçmişlerinden ve potansiyel gelecekteki çakışmalardan beni kurtardı.

Bir .gitignore dosyasını yapılandırma hakkında ayrıntılı bir rehber için şu gitignore eğitimine göz atın.

Sık sık commit etmek

Açık mesajlarla küçük ve sık commit’ler yapmak, ayrıntılı bir proje geçmişi oluşturur ve hata ayıklamayı ile iş birliğini kolaylaştırır.

Yaygın Git Init Sorunlarını Giderme

Doğru planlamaya rağmen sorunlar ortaya çıkabilir. İşte bazı yaygın problemler ve çözümleri.

Yanlış dizinde yanlışlıkla başlatma

Sorun: Yanlış klasörde git init çalıştırdınız ve artık istenmeyen bir Git deponuz var.

Çözüm:  

  • Git deposunu kaldırın:
rm -rf .git

> Uyarı: Bu, o depo için tüm sürüm geçmişini siler. Bu komutu çalıştırmadan önce doğru klasörde olduğunuzdan emin olun!

Ardından doğru dizine gidin ve git init komutunu tekrar çalıştırın. 

Bu hatayı birkaç kez yaptım; kaçınmak için çalışma dizininizi iki kez kontrol edin.

İzlenmeyen dosyalarla başa çıkma

Sorun: git init çalıştırdıktan sonra Git dosyalarınızı izlemiyor. git status çıktısı şunu gösteriyor:

No commits yet  
Untracked files:
  (use "git add <file>..." to include in what will be committed)

Çözüm: 

  • Dosyaların gerçekten izlenmediğini kontrol edin:
git status

Dosyalarınız Untracked files altında görünüyorsa, Git onları görüyor ama henüz izlemiyor demektir.

  • Ardından gerekli dosyaları şununla aşamaya alın:
git add <file-name>
  • Dosyaları commit’leyin:
git commit -m "Initial commit"

Düzenli durum kontrolleri, önemli hiçbir şeyin gözden kaçmamasını sağlar.

Eğer git status herhangi bir dosya göstermiyorsa, projede önemli dosyaları hariç tutuyor olabilecek bir .gitignore olup olmadığını kontrol edin.

Sonuç

git init’e hakim olmak, iş birliğini ve verimli proje yönetimini mümkün kılan güvenilir bir sürüm kontrol sistemi kurmanın kritik ilk adımıdır. Bu rehberi izleyin—deponuzu başlatmaktan ve düzenlemekten yaygın sorunları gidermeye kadar—pürüzsüz, verimli bir iş akışı kurmak için.

Küçük başlayın—git init kullanarak bir test projesi başlatın ve aşamaya alma, commit’leme ve değişiklikleri gönderme işlemlerini deneyin. Git’in temellerine ne kadar çabuk hâkim olursanız iş akışınız o kadar verimli olur! Ve Git becerilerinizi daha da derinleştirmek istiyorsanız, şu DataCamp kurslarına göz atın:

  • Intermediate Git – Gelişmiş dallanma, birleştirme ve çakışma çözme teknikleriyle yeteneklerinizi geliştirin.  
  • GitHub Foundations – İş birliğine dayalı projeler için Git ile GitHub’ı sorunsuzca entegre etmeyi öğrenin.

Mutlu kodlamalar—ve Git kullanarak güvenilir, yenilikçi projeler inşa etmenize!

SSS

Yanlış klasörde git init çalıştırdıysam bunu nasıl geri alırım?

Gizli .git klasörünü şu komutla kaldırın: rm -rf .git (Unix tabanlı sistemlerde) ya da Windows’ta manuel olarak silin. Ardından doğru dizine gidip git init komutunu yeniden çalıştırın.

git init ile git clone arasındaki fark nedir?

git init yeni ve boş bir depo oluşturur (ya da mevcut bir projeye sürüm kontrolü ekler); git clone ise mevcut bir uzak depoyu, geçmişiyle birlikte kopyalar.

Bir dizinin zaten Git deposu olup olmadığını nasıl kontrol ederim?

Terminalinizi o dizinde açın ve şunu çalıştırın: git rev-parse --is-inside-work-tree

Eğer “true” dönerse, dizininiz Git sürüm kontrolü altındadır.

.git klasörü neden gizli ve nasıl görüntüleyebilirim?

Git, projenizin sürüm geçmişini korumak için .git klasörünü gizler. Görüntülemek için dosya gezgininizde gizli dosyaları etkinleştirin veya şunları çalıştırın:  

ls -a  # Mac/Linux'ta
dir /A:H  # Windows'ta
git init kullandıktan hemen sonra kaçınılması gereken yaygın hatalar nelerdir?

Yaygın hatalar arasında uygun bir .gitignore eklemeyi ihmal etmek, git add ile aşamaya alma adımını atlamak ve net mesajlar olmadan commit etmek bulunur. Devam etmeden önce her zaman git status ile deponuzun durumunu doğrulayın.

Mevcut bir deponun alt dizininde Git&#39;i nasıl başlatırım?

Bir Git deposu içinde bir alt projeyi ayrı ayrı izlemek istiyorsanız, bir alt dizinde git init çalıştırmak yerine Git alt modüllerini kullanın.

git submodule add <repository-url> subdirectory-name

Bu, alt dizinin ayrı ayrı yönetilmesini sağlar ve üst depoya bağlı kalır.

Khalid Abdelaty

Yazar

Khalid Abdelaty

Veri hatları, bulut ve YZ araçları üzerinde çalışan; aynı zamanda DataCamp ve gelişmekte olan geliştiriciler için pratik, yüksek etkili eğiticiler yazan bir veri mühendisi ve topluluk inşacısıyım.

Konular

İlgili