Git ile kod kaydetme ve paylaşma

Sürüm denetimi kullanılırken yapılan en yaygın işlemler, kod sürümlerinin bir ekiple kaydedilmesi ve paylaşılmasıdır. Git'in bu görevler için kolay bir üç adımlı iş akışı vardır:

  1. İş için yeni bir dal oluşturma
  2. Değişiklikleri işleme
  3. Dalı ekiple paylaşmak için gönder

Git, dalları kullanarak çalışmayı yönetmeyi kolaylaştırır. Her hata düzeltmesi, yeni özellik, eklenmiş test ve güncellenmiş yapılandırma yeni bir dala başlar. Dallar geliştirme makinesinde hafif ve yereldir, bu nedenle dalı gönderme zamanı gelene kadar kaynak kullanımını veya değişiklikleri başkalarıyla koordine etme hakkında endişelenmenize gerek yok.

Dal hattı

Dallar, geliştirmedeki diğer değişikliklerden yalıtarak kod oluşturmanıza olanak tanır. Her şey çalışmaya başladığında dal ve değişiklikleri ekibinizle paylaşılır. Diğerleri, kendi dallarında devam eden çalışmayı etkilemeden kendi dal kopyalarındaki kodla denemeler yapabilir.

Dal oluşturma

Yeni bir çalışma başlatırken, geçerli daldaki kodu temel alarak main gibi bir dal oluşturun. Yeni bir dal oluşturmadan önce hangi dalın git status ile seçildiğini kontrol etmek iyi bir uygulamadır.

Git'te şu komutu kullanarak git branch dallar oluşturun:

> git branch <branchname>

Depodaki dallar arasında geçiş yapmak için verilen komut git checkout şeklindedir. Dalı oluşturduktan sonra değişiklikleri kaydetmeden önce bu dala geçin.

> git checkout <branchname>

Git'in hem dalı oluşturmak hem de aynı anda bu dala geçiş yapmak için bir kısaltma komutu vardır:

> git checkout -b <branchname>

GitHub veya Azure DevOps'ta Git dallarıyla çalışma hakkında daha fazla bilgi edinin.

Değişiklikleri kaydet

Git, düzenlemeler yapıldıkça kodun anlık görüntüsünü otomatik olarak almaz. Git'e bir sonraki anlık görüntüye hangi değişikliklerin ekleneceği tam olarak anlatılmalıdır. Buna hazırlama denir. Değişikliklerinizi hazırladıktan sonra anlık görüntüyü kalıcı olarak kaydetmek için bir commit yapın.

Değişiklikleri hazırlama

Git, depoda yapılan dosya değişikliklerini gerçekleşirken izler. Bu değişiklikleri üç kategoriye ayırır:

  • Değiştirilmemiş dosyalar son işlemeden bu yana değiştirilmedi.
  • Değiştirilen dosyalar son işlemeden sonra değişiklik gösterir ancak sonraki işleme için hazırlanmamıştır.
  • Hazırlanan dosyalar , sonraki işlemeye eklenecek değişikliklere sahiptir.

file_status_lifecycle-2

İşleme oluşturduğunuzda, anlık görüntü için yalnızca hazırlanmış değişiklikler ve değişmemiş dosyalar kullanılır. Dosya sisteminde korumasız değişiklikler tutulur, ancak işleme, anlık görüntüsünde değiştirilmemiş dosyayı kullanır.

Değişiklikleri işleme

İşleme oluşturarak Git'teki değişiklikleri kaydedin. Her işleme, deponun tam dosya içeriğini yalnızca tek tek dosya değişikliklerini değil her işlemede depolar. Bu davranış, kodun son sürümünden dosya düzeyi farklarını depolayan diğer sürüm denetim sistemlerinden farklıdır. Tam dosya geçmişleri Git'in değişiklikleri birleştirirken daha iyi kararlar vermesine olanak sağlar ve kod dalları arasında hızlı geçiş yapar.

git add ile değiştirilen dosyaları ekleyin, git rm ile dosyaları kaldırın ve git mv ile dosyaları taşıyın. Ardından, commit oluşturmak için git commit komutunu kullanın.

Geliştiriciler genellikle depodaki tüm değiştirilen dosyaları sahnelemek ister.

> git add –all

Ardından, değişiklikleri kısa bir açıklamayla işleyin:

> git commit -m "Short description of changes."

Her işlemenin değişikliklerini açıklayan bir iletisi vardır. İyi bir işleme iletisi, geliştiricinin bir işlemede yaptığı değişiklikleri hatırlamasını sağlar. İyi işleme iletileri, başkalarının işlemeyi gözden geçirmesini de kolaylaştırır.

Visual Studio veya Visual StudioCode'da dosyaları hazırlama ve değişiklikleri işleme hakkında daha fazla bilgi edinin.

Değişiklikleri paylaşma

İster bir ekipte çalışıyor ister kendi kodlarını yedeklemek istiyor olun, geliştiricilerin işlemeleri başka bir bilgisayardaki depoyla paylaşması gerekir. git push yerel depodan işlemeleri almak ve bunları uzak bir depoya yazmak için komutunu kullanın. Git, origin olarak da bilinen kopyanın kaynağına bağlanmak için kopyalanmış depolarda yapılandırılır. Geçerli dalınızdaki yerel işlemeleri bu git push depodaki başka bir dala (daladı) yazmak için komutunu çalıştırın. Git, branchname uzak depoda yoksa oluşturur.

> git push origin

ile git inityerel sistemde oluşturulan bir depoda çalışıyorsanız, değişikliklerin gönderilebilmesi için önce ekibin Git sunucusuna bir bağlantı kurmanız gerekir. Visual Studio veya Visual StudioCode'da uzak ayarları ayarlama ve değişiklikleri gönderme hakkında daha fazla bilgi edinin.

Branşları paylaşma

Yerel bir dalı ekibin paylaşılan deposuna göndermek, değişiklikleri ekibin geri kalanı için erişilebilir hale getirir. İlk kez git push çalıştırıldığında, -u seçeneği Git'e yerel dalı origin deposundaki branchname ile izlemeye başlamasını söyler. Bu tek seferlik izleme bilgileri kurulumundan sonra ekip üyeleri güncelleştirmeleri hızlı ve kolay bir şekilde paylaşmak için doğrudan kullanabilir git push .

> git push origin <branchname>

Sonraki Adımlar

GitHub veya Azure DevOps'taki dallar hakkında daha fazla bilgi edinin.

Visual Studio veya Visual Studio Code'da commit'leri ve dalları gönderme hakkında daha fazla bilgi edinin.