Git staging Area dosya kaydet - Git add & status

Projenizi ister yerel bir depoda olsun isterseniz uzak bir depodan klonlamış olsun tüm değişiklikleriniz yerel diskinizde gerçekleşecek ve commitleriniz ile oluşturacağınız tüm versiyonlar Git tarafından yerel diskinizdeki .git klasöründeki Git veri tabanında kayıt altına alınıp takip edilecektir. git push komutunu çalıştırmadığınız sürece yaptığınız değişiklikler sadece yerel diskinizde kayıt altına alınır.


Working Tree (Çalışma Ağacı) - Staging Area (Hazırlanma Alanı) – Local Repository (Yerel Depo)

Git’de üç tane alan vardır. Bunlardan ilki Working Tree olarak da bilinen Working Area’dır. Working Area, geliştiricinin o anda üzerinde çalıştığı alandır. Dosyalar bu alanda bulunur. Dosyalarda yapılan değişiklikler Working Area üzerinde görülür ve bu değişiklikler kaydedilmediği sürece kaybolur.

Git, dosyalardaki değişiklikleri izlemeye ve kaydetmeye başladığında Staging Area’ya geçilmiş olur. Dosyalar Staging Area’ya geçtiğinde Git artık bu dosyaları izlemeye başlamış olur ve bu dosyalardan haberdardır. Fakat bir dosya Staging Area’ya alındıktan sonra üzerinde değişiklik yapılırsa Git bunu yine görmeyecektir ve bu değişikliğin Git’e tekrar bildirilmesi gerekir. Dosyaları Staging Area’ya eklemek için git add komutu kullanılır.

Local Repository (Yerel Depo) ise .git dizinimizin içindeki her şeydir. Temel olarak tüm commit’lerimizin tutulduğu yerdir denebilir. Dosyaları ve bunlar üzerindeki değişiklikleri Staging Area’dan Local Repository’ye geçirmek için git commit komutu kullanılır. Bu komut ile Staging Area üzerindeki tüm değişiklikler alınır, birlikte paketlenir ve Local Repository’ye yerleştirilir. Commit komutu, son değişikliklerimizi Git’in takip etmesi için kullandığımız bir kontrol noktası olarak düşünülebilir. Commit edildikten sonra Staging Area boş kalmış olur.


git dersleri

Dosya Durumları

Git'de dosyalarınız genel olarak iki durumda olabilir.

Takip Edilmeyen (Untracked), bu durumdaki dosyalar versiyon kontrolü altında olmayan veya sizin henüz versiyon kontrolü yapmak için Git'e eklemediğiniz dosyalardır. Bu dosyalardaki değişiklikler siz dosyaları Git'e eklemediğiniz sürece versiyon kontrolüne tabi değildir.

Takip Altında (Tracked), bu durumdaki dosyalar ise Git'in versiyon kontrolü takibi altında olan dosyalardır. Bu dosyalar üzerinde yapacağınız tüm değişiklikler Git tarafından takip edilmektedir.

Staging Area

Çoğu versiyon kontrol sisteminde değişiklikleriniz iki yerde kaydedilir.

Ancak Git'de değişikliklerinizin kayıt altına alındığı üçüncü bir alan daha vardır ki buna Staging Area denir ve Git'in en temel kavramlarından birisidir. Staging Area'yı, proje dosyalarımızdaki bir dizi değişikliği yeni bir versiyon olarak mühürlemeden önce kayıt altında tuttuğunuz veri tabanı olarak tanımlayabiliriz.

git add

Git ile versiyon kontrolü altına aldığınız projenize dosya eklediğinizde, dosya sildiğinizde veya var olan bir dosyanın içeriğini değiştirdiğinizde bu değişiklikler Git tarafından otomatik olarak takip edilmez. Git'in bu dosyaları takip etmesi için git add komutu ile bu dosyaları önce Git’e tanıtmanız gerekir.

git add komutu, dosya içeriğini Dizine Staging Area (Hazırlama Alanı) eklemek için kullanılır. Bu komut, çalışma ağacının mevcut içeriğini hazırlama alanına günceller. Ayrıca, bir sonraki işleme için hazırlanan içeriği hazırlar. Projemize her dosya eklediğimizde veya güncellediğimiz zaman, güncellemeleri hazırlama alanına iletmek gerekiyor.

git add komutu, varsayılan olarak .gitignore dosyasını eklemez. Aslında bu komutla dosyaları yok sayabiliriz.

Git'e nasıl dosya ekleneceğini anlayalım mı?

Git add files

git add komutu basit bir komuttur. Hazırlama alanına dosyalar ekler. Hazırlama alanında bir kerede tek veya birden fazla dosya ekleyebiliriz. Şu şekilde çalıştırılacaktır:


git add <file1> <file2>

Yukarıdaki komut git hazırlama alanına eklenir, ancak sürüm kontrol sisteminde paylaşılamaz. Paylaşmak için bir taahhüt işlemi gerekir. Aşağıdaki senaryoyu anlayalım.

Deneme dizinin içinde yeni oluşturduğumuz depomuz için bir dosya oluşturduk. Bir dosya oluşturmak için touch komutunu aşağıdaki gibi kullanın:


touch deneme.txt
touch test.txt

Ve Dosyaların takip edilmeyen olup olmadığını git status komutu ile aşağıdaki gibi kontrol edin:


git status

ÇIKTI:


git dersleri

Yukarıdaki komut, depodaki izlenmeyen dosyaları gösterecektir. Bu dosyalar depomuza eklenebilir. Bu iki dosya Staging Area(Geçici alan) kaydedilmiş.


git add deneme.txt test.txt

Yukarıdaki komutla Hazırlanma alanına dosyaları kaydeder.

Tekrar git status komutu ile duruma bakalım.


git status

ÇIKTI:


git dersleri

Yukarıda çıktıda yeşil yazı ile görüldüğü üzere yerel depomazı 2 dosya gönderilmesi gerektiğini söylüyor.

Git Birden Fazla Dosya Ekle

Git'te birden fazla dosya ekleyebiliriz ancak add komutunu tekrar tekrar çalıştırmamız gerekiyor. Git, mevcut tüm dosyaları bir kerede ekleyebileceğimiz benzersiz bir add komutu seçeneği ile bize kolaylık sağlıyor. Depodaki tüm dosyaları eklemek için --all seçeneğiyle ekle komutunu çalıştırın . Kullanabiliriz '.', '*' ve --all seçeneği yerine. Bu komut, tüm dosyaları bir seferde hazırlayacaktır. Aşağıdaki gibi çalışacaktır:


git add --all

Kısa gösterimi


git add -A  //--all	yerine geçer
git . //bulunduğu dizinde Tüm dosyalar
git * //Tüm dosyalar

Yukarıdaki komut, depoda bulunan tüm dosyaları ekleyecektir.


git add -A  

Yukarıdaki komut, tüm dosyaları hazırlama alanına ekleyecektir. Unutmayın, -A seçeneği büyük/küçük harf duyarlıdır. Aşağıdaki çıktıyı göz önünde bulundurun:

Tüm Değiştirilmiş ve Silinmiş Dosyaları Ekle

git add, çeşitli seçeneklerle bize kolaylık sağlıyor. Git'te yalnızca değiştirilen ve silinen dosyaları sahnelememize izin veren başka bir seçenek daha var. Yeni oluşturulan dosyayı aşamalandırmaz. Yalnızca değiştirilen ve silinen tüm dosyaları düzenlemek için aşağıdaki komutu çalıştırın:


git add -u  

Git rm –cached

git rm –cached bayrağı, hazırlama alanından bir dosyayı kaldırır. Çalışma dizinindeki dosyalar olduğu gibi kalacaktır. Bu, yerel olarak dosyanın bir kopyasına sahip olacağınız anlamına gelir. Dosya, Git projenizi izleyen dizinden kaldırılacaktır.


git status

ÇIKTI:

git dersleri


Test.txt dosyasını Staging Area bölgesinden silelim.


git dersleri
Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlanacaktır. Lütfen Yukarıda ki mesajları okuyun tekrar aynı soruları sormayın.

6779

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
  • MİTHRİL FRAMEWORK
  • Laravel
  • Git
  • React
POPÜLER MAKALE
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML RESME LİNK VERME
  • HTML FORM OLUŞTURMA
  • CSS YATAY MENÜ YAPIMI
  • HTML RESİM EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML DİV ve SPAN NEDİR?
  • HTML ARKAPLANA MÜZİK EKLEME
  • KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.