Kurulum basit :)
#>sudo apt-get install git-core git-gui git-docİlk önce git sistemine kendimizi tanıtalım.
#>git config --global user.name "Volkan Oransoy"
#>git config --global user.email "voransoy[]gmail.com"Basitçe bir django projemiz için bir git senaryosu yapalım. Önce projemizi oluşturalım.
#>django-admin.py startproject tutorialBu bize django projemiz için bir klasör oluşturacak.
#>cd tutorial
Şu anda proje klasörümüzün durumu bu
. .. __init__.py manage.py settings.py urls.py
Kütüğümizi oluşturalım.
#>git initKlasörümüz bu hali aldı.
. .. .git __init__.py manage.py settings.py urls.pyGit kütüğümüzün durumunu görelim.
#> git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add ..." to include in what will be committed)
#
# __init__.py
# manage.py
# settings.py
# urls.py
nothing added to commit but untracked files present (use "git add" to track)
Git kütüğümüz var ancak içi boş. Master, yani ana daldayız. Git sürüm sistemi içinde farklı kollar ile tüm projenin farklı fraksiyonlarını oluşturmak mümkün. Bu şekilde kök koda dokunmadan deneyler yapabilir, başarılı olduğunda ana dala entegre edebiliriz. Şimdi eklenecek dosyaları seçelim. Komutunm sonundaki nokta, tüm dosyalar anlamında. Fakat teker teker dosya adı da yazabiliriz.
#>git add .Dosyaları seçtik ve ilk kütük kaydını girelim.
#>git commit -m "İlk kayıt"Şimdi duruma göz atalım.
#>git status
# On branch master
nothing to commit (working directory clean)Görüldüğü üzere git tarafından izlenen dosyalarda bir değişiklik yok. Burada yeri gelmişken belirtelim. Git'in en büyük özelliği dosyaları değil, tüm dosyalardaki değişiklikleri takip etmesi. Farklılığı görmek için ufak bir değişiklik yapalım. Settings.py altına bir comment girelim.
#>echo "#Test comment" >> settings.pyBakalım git bu işe ne diyecek?
#>git status
# On branch master
# Changes not staged for commit:
# (use "git add ..." to update what will be committed)
# (use "git checkout -- ..." to discard changes in working directory)
#
# modified: settings.py
#
no changes added to commit (use "git add" and/or "git commit -a") Bu değişikliği git kütüğüne girmekiçin ne yapamamız gerektiğini biliyoruz. Önce seçeceğim ardından ekleyeceğim. Değişen tüm dosyaları seçip kütüğe girmek için.
#>git commit -am "settng.py değişti"Senaryomuzu genişletelim. Diyelim ki olgun bir konuma geldi yazılımımız ama riskli birşey denemek istiyorum. Bu kodun bozulmasını da istemiyorum. O zaman yeni bir dal açalım ve bu dala geçelim.
#>git branch testbranch
#>git checkout testbranchBundan sonra yapacağımız değişiklikler bu dala kaydedilecek. Test için django projemize bir uygulmama oluşturalım.
#>python manage.py startapp testappOluşan testapp klasörünü yeni oluşturulan dalımıza kaydedelim.
#>git add testapp
#>git commit -am "testapp created"İşte şimdi git neden lazım görelim. Diyelim ki testapp ta bir sorun var ve ilk başladığımız hali incelememiz lazım. Master'a geri dönelim.
#>git checkout master#>ls -a
. .. .git __init__.py __init__.pyc manage.py settings.py settings.pyc urls.pyİşte testbranch tan hemen önceki duruma geri geldik. Ya da testapp çok başarılı oldu ve artık master olarak bu dalı kullanmak istiyoruz.
#>git merge testbranchArtık master ve testbranch aynı durumda. Testbranch'a ihtiyaç olmadığına göre silebiliriz.
#>git branch -d testbranchBakalım şu ana kadar neler yapmışız.
#>git log
commit 98a97034f3412150253d75efbb62911005191952
Author: Volkan Oransoy
Date: Sat Jul 9 23:09:30 2011 +0300
testapp created
commit 03d59c3e3366d35ee0daed16e2b8ac13a15dbc04
Author: Volkan Oransoy
Date: Sat Jul 9 22:58:47 2011 +0300
settng.py değişti
commit d9445c37a8a8fdb8eeaaf0018cddade53b79c4da
Author: Volkan Oransoy
Date: Sat Jul 9 22:52:03 2011 +0300
İlk kayıt
Şimdilik bu kadar. O zaman kadar bu siteler göz atabilrisiniz.
http://gitref.org/basic/
http://gitcasts.com/
0 yorum:
Yorum Gönder