Murat KIRMIZIGÜL

Kişisel Web Sitesi ve Bloğu
RSSFacebookTwitterLinkedInFlickrinstagram
  • ana sayfa
  • zaman tüneli
  • iletişim
Anasayfa / Açık Kaynak / Git Kurulumu ve Kullanımı-1

Git Kurulumu ve Kullanımı-1

Yazar: Murat KIRMIZIGÜL Tarih: 4 Ekim 2015 Kategori: Açık Kaynak, Git Yorum yap 3,899 görünümler 0

Linux’ta Kurulum

Git’i Linux sisteminize paket kurucu yardımıyla kurmak istiyorsanız, bunu genellikle dağıtımınızla birlikte gelen temel paket yönetim aracıyla yapabilirsiniz. Fedora kullanıcısıysanız, yum’u kullanabilirsiniz:

$ yum install git-core

Ubuntu gibi Debian-tabanlı bir sistemdeyseniz, apt-get’i kullanabilirsiniz:

$ apt-get install git

Mac’te Kurulum

Git’i Mac’te kurmak için iki kolay yol vardır. En kolayı, SourceForge sayfasından indirebileceğiniz görsel Git yükleyicisini kullanmaktır (bkz. Figür 1-7).

http://sourceforge.net/projects/git-osx-installer/


Figür 1-7. Git OS X yükleyicisi.

Diğer başlıca yol, Git’i MacPorts (http://www.macports.org) vasıtasıyla kurmaktır. MacPorts halihazırda kurulu bulunuyorsa Git’i şu komutla kurabilirsiniz:

$ sudo port install git-core +svn +doc +bash_completion +gitweb

Bütün ek paketleri kurmanız şart değil, ama Git’i Subversion yazılım havuzlarıyla kullanmanız gerekecekse en azından +svn’i edinmelisiniz.

Windows’ta Kurulum

Git’i Windows’da kurmak oldukça kolaydır. mysysGit projesi en basit kurulum yöntemlerinden birine sahip. Çalıştırılabilir kurulum dosyasını GitHub sayfasından indirip çalıştırmanız yeterli:

http://msysgit.github.com/

Kurulum tamamlandığında hem (daha sonra işe yarayacak olan SSH istemcisini de içeren) komut satırı nüshasına hem de standart kullanıcı arayüzüne sahip olacaksınız

Git Kullanımı

Git’i kurduğunuzda yapmanız gereken ilk şey adınızı ve e-posta adresinizi ayarlamaktır. Bunun önemli olmasının nedeni her bir Git kaydının bu bilgiyi kullanıyor olması ve bu bilgilerin dolaşıma soktuğunuz kayıtlara değişmez biçimde işlenmesidir.

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

Ayarlarınızı Gözden Geçirmek

Ayarlarınızı gözden geçirmek isterseniz, Git’in bulabildiği bütün ayarları listelemek için git config --list komutunu kullanabilirsiniz.

Var olan Bir Klasörde Yazılım Havuzu Oluşturmak

Var olan bir projenizi sürüm kontrolü altına almak istiyorsanız, projenin bulunduğu klasöre gidip aşağıdaki komutu çalıştırmanız gerekir:

$ git init

Var olan dosyalarınızı sürüm kontrolüne almak istiyorsanız, o dosyaları hazırlayıp kayıt etmelisiniz. Bunu, sürüm kontrolüne almak istediğiniz dosyaları belirleyip kayıt altına aldığınız birkaç git komutuyla gerçekleştirebilirsiniz:

$ git add *.c
$ git add README
$ git commit -m 'projenin ilk hali'

Birazdan bu komutların üzerinde duracağız. Bu noktada, sürüm kontrolüne aldığınız dosyaları içeren bir Git yazılım havuzunuz var.

Var olan Bir Yazılım Havuzunu Klonlamak

Var olan bir Git yazılım havuzunu klonlamak istiyorsanız —söz gelimi, katkıda bulunmak istediğiniz bir proje varsa- ihtiyacınız olan komut git clone. Subversion gibi başka SKS’lere aşinaysanız, komutun checkout değil clone olduğunu fark etmişsinizdir. Bu önemli bir ayrımdır —Git, sunucuda bulunan neredeyse bütün veriyi kopyalar. git clone komutunu çalıştırdığınızda her dosyanın proje tarihçesinde bulunan her sürümü istemciye indirilir. Hatta, sunucunuzun diski bozulacak olsa, herhangi bir istemcideki herhangi bir klonu, sunucuyu klonlandığı zamanki haline geri getirmek için kullanabilirsiniz (sunucunuzdaki bazı çengel betikleri (hook) kaybedebilirsiniz, ama sürümlenmiş verinin tamamı elinizin altında olacaktır —daha fazla ayrıntı için bkz. 4. Bölüm)

Bir yazılım havuzu git clone [url] komutuyla klonlanır. Örneğin, Grit adlı Ruby Git kütüphanesini klonlamak isterseniz, bunu şu şekilde yapabilirsiniz:

$ git clone git://github.com/schacon/grit.git

Bu komut grit adında bir klasör oluşturur, bu klasörün içinde bir .git alt dizini oluşturup ilklemesini yapar, söz konusu yazılım havuzunun bütün verisini indirir ve son sürümünün bir koyasını seçer (checkout). Bu yeni grit klasörüne gidecek olursanız, kullanılmaya ve üzerinde çalışılmaya hazır proje dosyalarını görürsünüz. Yazılım havuzunu adı grit’ten farklı bir klasöre kopyalamak isterseniz, bunu komut satırı seçeneği olarak vermelisiniz:

$ git clone git://github.com/schacon/grit.git mygrit

Bu komut da bir öncekiyle aynı şeyleri yapar, fakat oluşturulan klasörün adı mygrit‘tir.

Yeni Dosyaları İzlemeye Almak

Yeni bir dosyayı izlemeye almak için git add komutunu kullanmalısınız. README dosyasını izlemeye almak için komutu şu şekilde çalıştırabilirsiniz:

$ git add README

status komutunu yeniden çalıştırırsanız, README dosyasının artık izlemeye alındığını ve hazırlık alanında olduğunu göreceksiniz:

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#

Hazırlık alanında olduğunu “Changes to be committed” başlığının altında olmasına bakarak söyleyebilirsiniz. Eğer bu noktada bir kayıt (commit) yapacak olursanız, dosyanın git add komutunu çalıştırdığınız andaki hali bellek kopyasına kaydedilecektir. Daha önce git init komutunu çalıştırdıktan sonra projenize dosya eklemek için git add (dosya) komutunu çalıştırdığınızı hatırlayacaksınız —bunun amacı klasörünüzdeki dosyaları izlemeye almaktı. git add komutu bir dosya ya da klasörün konumuyla çalışır; eğer söz konusu olan bir klasörse, klasördeki bütün dosyaları tekrarlamalı olarak projeye ekler.

Değiştirilen Dosyaları Hazırlamak

Gelin şimdi halihazırda izlenmekte olan bir dosyayı değiştirelim. İzlenmekte olan benchmarks.rb adındaki bir dosyayı değiştirip status komutunu çalıştırdığınızda şöyle bir ekran çıktısıyla karşılaşırsınız:

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#
#   modified:   benchmarks.rb
#

benchmarks.rb dosyası “Changes not staged for commit” başlıklı bir bölümün altında görünüyor —bu başlık izlenmekte olan bir dosyada değişiklik yapılmış olduğu fakat dosyanın henüz hazırlık alanına alınmadığı durumlarda kullanılır. Dosyayı hazırlamak için, git add komutunu çalıştırın (git add çok amaçlı bir komuttur, bir dosyayı izlemeye almak için, kayda hazırlamak için, ya da birleştirme uyuşmazlıklarının çözüldüğünü işaretlemek gibi başka amaçlarla kullanılır). Gelin benchmarks.rbdosyasını kayda hazırlamak için git add komutunu çalıştırıp sonra da git status komutuyla duruma bakalım:

$ git add benchmarks.rb
$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#   modified:   benchmarks.rb
#

Her iki dosya da kayda hazırlanmış durumdadır ve bir sonraki kaydınıza dahil edilecektir. Tam da bu noktada, henüz kaydı gerçekleştirmeden, aklınıza benchmarks.rb dosyasında yapmak istediğiniz küçük bir değişikliğin geldiğini düşünelim. Dosyayı yeniden açıp değişikliği yaptıktan sonra artık kaydı yapmaya hazırsınız. Fakat, git status komutunu bir kez daha çalıştıralım:

$ vim benchmarks.rb
$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#   modified:   benchmarks.rb
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#
#   modified:   benchmarks.rb
#

Ne oldu? benchmarks.rb dosyası hem kayda hazırlanmış hem de kayda hazırlanmamış görünüyor. Bu nasıl olabiliyor? Git, bir dosyayı git add komutunun alıştırıldığı haliyle kayda hazırlar. Eğer şimdi kayıt yapacak olursanız, benchmarks.rb dosyası, çalışma klasöründe göründüğü haliyle değil, git add komutunu son çalıştırdığınız haliyle kayıt edilecektir. Bir dosyayı git add komutunu çalıştırdıktan sonra değiştirecek olursanız, dosyanın son halini kayda hazırlamak için git add komutunu bir kez daha çalıştırmanız gerekir:

$ git add benchmarks.rb
$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#   modified:   benchmarks.rb
#

  • tweet

Etiketler:git subversion

Hakkında Murat KIRMIZIGÜL

- Gaziantep doğumlu - Bilgisayar Mühendisi - Yazılım Geliştirici-Proje Yöneticisi - Siyaset, Tarih, Sosyoloji, Fotoğrafçılık sever - Ayaz'ın babası :)
Önceki: Sık Kullanılan Linux Komutları (Debian tabanlı sürümler)
Sonraki: Apache Mod_Rewrite Kullanımı ve Ayarları (Windows & Linux)

İlgili Yazılar

Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

19 Nisan 2017

Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

31 Ekim 2015

Ubuntu “Sorry, command-not-found has crashed!…” Çözüm

Ubuntu “Sorry, command-not-found has crashed!…” Çözüm

31 Ekim 2015

Cevapla Çık

E-posta adresiniz yayınlanmayacak.Gerekli alanlar işaretlenmişlerdir *

*

*

Kategoriler

  • Açık Kaynak (19)
    • Codeigniter (1)
    • Git (3)
    • Linux (7)
    • Redmine (3)
    • Wordpress (1)
  • Genel (15)
    • Fotoğraf (2)
    • OS (1)
      • MAC OSX (1)
    • Programlar (4)
      • MS Excel (2)
  • Hayatın İçinden (12)
    • Kitaplar (1)
  • Veritabanları (23)
    • MS Access (2)
    • MS SQL (14)
    • Mysql (2)
    • Postgresql (6)
  • Yazılım (26)
    • Asp.net (3)
    • C# (6)
    • Html (4)
    • Javascript (12)
    • OOP (NYP) (2)
  • Popüler
  • Son
  • Yorumlar
  • Etiketler
  • Excel de Birden Çok Kritere Göre Düşey Arama

    23 Temmuz 2014
  • Redmine Kurulumu

    Redmine Kurulumu

    5 Nisan 2015
  • Postgresql ile Sorgu Sonuçlarını JSON formatına Dönüştürme

    Postgresql ile Sorgu Sonuçlarını JSON formatına Dönüştürme

    30 Ekim 2015
  • String içerisine çift tırnak koymak

    String içerisine çift tırnak koymak

    30 Kasım 2011
  • Herkesin bir hikâyesi vardır. Kimi kâğıda kazır hikâyesini, kimi etine … Kâğıt yanınca, et gömülünce biter hikâye ..

    13 Nisan 2014
  • ERR! fatal: tag ‘vx.x.xx’ already exists

    22 Nisan 2022
  • Centos Sunucu da SSL Sertifikaları Hataları

    21 Nisan 2022
  • Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

    Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

    19 Nisan 2017
  • Excel deki Seçilen Satırlarda Tüm Kelimelerin İlk Harfini Büyütmek

    Excel deki Seçilen Satırlarda Tüm Kelimelerin İlk Harfini Büyütmek

    10 Ocak 2017
  • Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

    Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

    31 Ekim 2015
  • Mustafa: Merhabalar, benim bir sorum olacak. Bir yemek maliyeti üzere...
  • Murat KIRMIZIGÜL: Teşekkürler ......
  • Murat KIRMIZIGÜL: Düşeyara ile yapabilirsiniz....
  • Murat KIRMIZIGÜL: İşinize yaradığına sevindim....
  • Kaan KÖROĞLU: İşime yarayacak şekilde örnek veren sadece siz oldunuz, teşe...
mssql postgresql sql Google Maps Google Maps Api V3 js redmine Google OOP ado.net excel class c# html access js get url parameter asp.net code behind js run js run redmine install linux tarih ve saat değiştir bir savcının anıları dropbox.py redmine default my page change js history href linux dropbox

Kategoriler

  • Açık Kaynak (19)
    • Codeigniter (1)
    • Git (3)
    • Linux (7)
    • Redmine (3)
    • Wordpress (1)
  • Genel (15)
    • Fotoğraf (2)
    • OS (1)
      • MAC OSX (1)
    • Programlar (4)
      • MS Excel (2)
  • Hayatın İçinden (12)
    • Kitaplar (1)
  • Veritabanları (23)
    • MS Access (2)
    • MS SQL (14)
    • Mysql (2)
    • Postgresql (6)
  • Yazılım (26)
    • Asp.net (3)
    • C# (6)
    • Html (4)
    • Javascript (12)
    • OOP (NYP) (2)
  • Popüler
  • Son
  • Yorumlar
  • Etiketler
  • Excel de Birden Çok Kritere Göre Düşey Arama

    23 Temmuz 2014
  • Redmine Kurulumu

    Redmine Kurulumu

    5 Nisan 2015
  • Postgresql ile Sorgu Sonuçlarını JSON formatına Dönüştürme

    Postgresql ile Sorgu Sonuçlarını JSON formatına Dönüştürme

    30 Ekim 2015
  • String içerisine çift tırnak koymak

    String içerisine çift tırnak koymak

    30 Kasım 2011
  • Herkesin bir hikâyesi vardır. Kimi kâğıda kazır hikâyesini, kimi etine … Kâğıt yanınca, et gömülünce biter hikâye ..

    13 Nisan 2014
  • ERR! fatal: tag ‘vx.x.xx’ already exists

    22 Nisan 2022
  • Centos Sunucu da SSL Sertifikaları Hataları

    21 Nisan 2022
  • Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

    Centos Üzerindeki Apache Web Sunucunda SpringBoot Ya da Rails Uygulaması Yayınlama

    19 Nisan 2017
  • Excel deki Seçilen Satırlarda Tüm Kelimelerin İlk Harfini Büyütmek

    Excel deki Seçilen Satırlarda Tüm Kelimelerin İlk Harfini Büyütmek

    10 Ocak 2017
  • Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

    Ubuntu 12.04 LTS Üzerine Postgresql 9-4 Kurulumu

    31 Ekim 2015
  • Mustafa: Merhabalar, benim bir sorum olacak. Bir yemek maliyeti üzere...
  • Murat KIRMIZIGÜL: Teşekkürler ......
  • Murat KIRMIZIGÜL: Düşeyara ile yapabilirsiniz....
  • Murat KIRMIZIGÜL: İşinize yaradığına sevindim....
  • Kaan KÖROĞLU: İşime yarayacak şekilde örnek veren sadece siz oldunuz, teşe...
mssql postgresql sql Google Maps Google Maps Api V3 js redmine Google OOP ado.net excel class c# html access js get url parameter asp.net code behind js run js run redmine install linux tarih ve saat değiştir bir savcının anıları dropbox.py redmine default my page change js history href linux dropbox

Etiketler

access ado.net excel asp.net code behind js run bir savcının anıları c# class delete all data dropbox.py excel veri aktar excel veri okuma ezbergec.com ezbergeç Google Google Maps Google Maps Api V3 href html install redmine with apache js js debugging js get url parameter js history js run kml kml create libc6 error linux change datetime linux dropbox linux tarih ve saat değiştir mssql mssql de tüm veriyi temizle namık kemal behramoğlu OOP postgresql postgresql pkey değerini otomatik arttırma redmine Redmine 3.0 redmine default my page change redmine install redmine kurulum rows to json postgresql sftp without wp plugin install sql would be truncated wp eklenti kurulumu yetki verme
RSSFacebookTwitterLinkedInFlickrinstagram
© 2015, Tüm hakları saklıdır.
Yukarı çık