Sürüm Kontrol : Git ve Github

Yazılım projesi geliştirirken, kademeli olarak kodları yedeklemek ve saklamak gerekmektedir. Bu yedeklemeler yapılırken gerektiğinde önceki sürüme geri dönebilmemiz ve önceki sürüm ile farkları (change log) belirlememiz gerekmektedir.

Bunun yanı sıra, bir projede birden çok yazılımcı çalıştığı için, yapılan değişikliklerin birbiriyle çakışmaması gerekmektedir. Sürüm kontrol sistemlerinin yaptığı şey de budur.

Şu an en yaygın versiyon kontrol sistemi “Git“dir. Bu yazılım aynı zamanda Linuxun da geliştiricisi olan Linus Torvalds tarafından geliştirilmiştir. Açık kaynak kodlu, ücretsiz bir yazılımdır.

Github” ise kodların saklanıldığı uzak sunucu (remote) git servisidir.

Repository : git projelerinin her birine verilen addır.

Commit : Herbir sürüme verilen isimdir. Her değişiklik yapılan adımdır. Hash Key , Ad ve açıklama içerir.

Branch : Değişliğin yapıldığı branşa verilen isimdir. Her repositoryinin ana branşı masterdır. Yani uygulamanın asıl sürümünü master branch oluşturur.

git clone <adres>
- uzak sunucudaki kodları geliştiricinin bilgisayarına klonlar

git commit -am <mesaj>
- Kodda yapılan değişikliklerden commit oluşturur

git push
- Commitleri uzak sunucuya gönderir

git pull
- Uzak sunucudaki commitleri ve güncellemeleri alır.

git init
- Herhangi bir klasörde git repositorysi oluşturur.