Projemiz üzerindeki tüm değişikliklerin GIT versiyon kontrol sistemi tarafından takip edilip, kayıt altına alınabilmesi için bir repository oluşturmamız gerekir. Repository; projemiz içerisinde yer alan dosyalar üzerinden yapılan değişiklikleri ve bu değişikliklerin kim tarafından ne zaman yapıldığı bilgisini tutan bir veri tabanıdır.
git init
Yukarıdaki komut ile projemiz için bir repository oluşturup, projemizdeki tüm dosya ve klasörlerin versiyon kontrol sistemi tarafından takip edilmesini sağlamaktayız.

Masaüstümde git-egitim
isimli bir klasör oluşturdum ve konsoldan bu klasöre gelip git init
komutunu çalıştırdım. Artık git-egitim
klasörü içerisinde yapılabilecek tüm değişiklikler (dosya ekleme/silme/değiştirme) GIT tarafından takip edilecektir. Repository oluşturduktan sonra git-egitim
klasöründe .git
isimli gizli bir klasör oluştuğu görülecektir, projemiz üzerindeki tüm değişiklikler bu gizli klasör içerisinde tutulmaktadır.
git status
Projemiz üzerinde yapılan değişikliklerin bir özetini görüntülemek için git status
komutunu kullanabiliriz.

git-egitim
klasörüne index.html
isminde bir dosya ekledikten sonra konsola git status
komutunu yazığımda; Untracked files
başlığında eklemiş olduğum index.html
dosyasının yer aldığını görebiliriz. GIT, git-egitim
repository’si üzerindeki tüm değişiklikleri takip ettiği için eklemiş olduğumuz yeni dosya GIT tarafından algılandı.
Working Directory ve Staging Area
Working Directory
terimi projemizin ana klasörüne verilen bir isimdir. Örnek projemizin Working Directory
yani ana klasörü git-egitim
klasörüdür. Bu klasör üzerinde yapılan tüm değişikliklerin GIT tarafından takip edildiğine değinmiştik. Değişikliklerimiz tamamlandıktan sonra değişikliklerimizi yeni bir versiyon olarak kayıt altına almak için önce yapmış olduğumuz değişiklikleri Staging Area
‘ya taşımamız ve sonra da Commit
atmamız gerekir.
git add dosya_adi
Değişikliklerimizi/geliştirmelerimizi Staging Area
‘ya taşımak için git add
komutunu kullanırız.

Diyelim ki index.html
dosyası içerisine html kodlarımızı yazdık ve Commit
atarak yazdığımız kodların yeni bir versiyon olarak git-egitim
repository’sine kaydedilmesini istiyoruz. Bunun için önce git add index.html
komutunu kullanarak, index.html
dosyasını Staging Area
‘ya taşımamız gerekir. index.html
dosyasını Staging Area
‘ya taşıdıktan sonra tekrar git status
komutunu yazdığımızda index.html
dosyasının artık Changes to be committed
alanında gözüktüğünü göreceğiz. Artık değişikliklerimizi commit atarak kayıt altına alabiliriz (Commit hakkında daha detaylı bilgiye ve nasıl commit atılacağına Commit başlıklı içerikte yer vereceğim).
Bu içerikte Repository, Working Directory ve Staging Area kavramlarının üzerinde durduk. Sonraki içeriklerde Branch ve Commit konularına değinerek devam ediyor olacağız.
KOMUT | AÇIKLAMA |
git init | Repository oluşturma. |
git status | Projeye eklenen, silinen, değiştirilen tüm dosyaları görüntüleme. |
git add file.txt | file.txt dosyası Staging Area’ya taşınır. |
git add file1.txt file2.txt | Birden fazla dosya Staging Area’ya taşınmak isteniyorsa dosya adları aralarına boşluk bırakılarak yazılır. |
git add . | Eklenen, silinen, değiştirilen tüm dosyaları Staging Area’ya taşımak için “.” koyulur. |