Git Kurulumu & Github Repo Oluşturma

Git bir sürüm kontrol sistemidir. Projedeki herhangi veya tüm değişikleri takip etmeyi sağlar. Yapacağımız projenin adım adım versiyonlarını, kopyalarını alır. İhtiyaç duymamız halinde bu versiyonlara, kopyalara kolayca geri dönmemiz için olanak sağlar. Github depomuzda yaptığımız gibi , Git sistemi kodu herkesle paylaşmanın çok kolay bir yoludur.

Git’i kullanarak kodlarımızı Heroku, AWS ve diğerleri gibi hizmetlerde canlı bir bulut uygulama hizmetleriyle dağıtmak için de kullanabilirsiniz.

Django projemi kullanarak aşağıdaki adımları uyguladım:

1 Git’in yüklenmesi şu yöntemlerden biriyle yüklenebilir :

git-scm ‘in kendisinden (tercih edilen)

Heroku CLI

Homebrew

2 Terminal’i açın ve kurulumu doğrulayın

sum@sumaray:~$ git --version

git version 2.7.4

Bu şekilde yüklenen/kullanılan sürümün bilgisini alırız.

3 Değişiklikleri “izlemek” istediğiniz bir dizinde (klasör) git’i başlatın.

sum@sumaray:~/Desktop/blogSite$ git init

Reinitialized existing Git repository in /home/sum/Desktop/blogSite/.git/

3.1 Git Yapılandırması

İlk defa git kurulumunda, git programına kullanıcı adımızı ve mail adresimizi tanıtmamız gerekir. bizden başka insanlarında dahil olduğu bir yazılım projesinden çalıştığımızda alınan versiyonların karışmaması için kimin tarafından alındığı önemlidir. kullanacağımız tüm git komutlarının başında git geliyor. (config:ayar,yapılandırma demek)

   sum@sumaray:~$ git config --global user.name "KullanıcıAdı"
   sum@sumaray:~$ git config --global user.email "mailAdresi@gmail.."

Eğer önceden tanımladığınız kullanıcı adı ve gmail adresimizi öğrenmek istersek terminalde şu şekilde sorguyabiliyoruz:

  sum@sumaray:~$ git config --global user.name
  sümeyye kılıç
  sum@sumaray:~$ git config --global user.email
  smyyekilic@gmail.com    

4 “ .gitignore “ oluşturun

Bunun amacı, git ile izlenen dosyaların “yoksayılması” dır. Bu, yerden tasarruf sağlar ve gereksiz dosyaları kaldırır. Önceden oluşturulmuş her türlü yazılım gitignore dosyalarını burada bulabilirsiniz.

(venv) sum@sumaray:~/Desktop/blogSite$ echo "*.py[cod]
> .DS_Store
> __pycache__/
> *.py[cod]
> *$py.class
> " > .gitignore

yukarıda .gitignore dosyasını oluştururken dahil etmek istediğim doyalarıda ekleyerek oluşturdum:

5 Dosya durumunu kontrol etme:

(venv) sum@sumaray:~/Desktop/blogSite$ git status

On branch master
Your branch is up-to-date with 'blogRepo/master'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	modified:   .gitignore

no changes added to commit (use "git add" and/or "git commit -a")

6 Tüm dosyaları ekleyip commit etme

(venv) sum@sumaray:~/Desktop/blogSite$ git add --all*

(venv) sum@sumaray:~/Desktop/blogSite$ git commit -m "gerekli eklemeler yapıldı"
[master b24700e] gerekli eklemeler yapıldı
 1 file changed, 5 insertions(+), 5 deletions(-)

7 Uzak bir Repo (oluşturma adımları aşağıda ki gibi) hazır olduğunda, yerel dosyayı Push et!

Github Deposu Oluşturma (Uzak Git Reposu ile )

  • Github adresinden Hesap Oluştur ve Giriş Yap     
  • Add New Repository ile Yeni Depo Ekle   
  • Bir ad ve açıklama verin. (Ne yaptığınızı bilmiyorsanız .gitignore veya readme eklemeyin.)

  • “adding to existiing respository” talimatlarını uygulayın veya benim uyguladığım şu talimatları izleyebilirsiniz:

Github’a gönderme

  • Repo'nun adresini(http://githubKullaniciAdı/repoAdı.github.io.git) kopyala

  • git remote add http://githubKullaniciAdı/repoAdı.github.io.git

  • git remote    //bağlantı başarılımı

  • git push -u repoAdı master

Projeye Ekleme Yapıldığında

terminalden proje dizinine gelinmelidir.

$ git status 
$ git add .
$ git commit -m "değişiklikler mesajı"
$ git status
$ git log 
$ git remote
$ git push -u repoAdı master

7 Yerel Dosyayı Push Etme! 🐣
Github repo’su eklendikten sonra 7.adımdaki push etme adımı şu şekilde sonlanır:

(venv) sum@sumaray:~/Desktop/blogSite$ git push blogRepo master

    Username for 'https://github.com': .... 

yukarıda kullanıcı adı,şifre bilgileri girilerek push edilir. Github repo’nuzu yenileyerek eklenen dosyaları görebilirsiniz. !


❗ Karşılaştığım bir Hata!

  • ekleme yaptığım bir projeyi github repoma push etmede başarısız hatası verdi:
    sum@sumaray:~/Desktop/sumeyyekilic.github.io$ git push -u origin master
    Username for 'https://github.com': smyyekilic@gmail.com
    Password for 'https://smyyekilic@gmail.com@github.com': 
    To https://github.com/sumeyyekilic/sumeyyekilic.github.io.git
     ! [rejected]        master -> master (fetch first)
    error: failed to push some refs to 'https://github.com/sumeyyekilic/sumeyyekilic.github.io.git'
    

    Çözümüm:

sum@sumaray:~/Desktop/sumeyyekilic.github.io$ git push origin master -f

yani git push origin master yerine git push origin master --force veya force yerine f yazmak: git push origin master -f