- Mesaj
- 6
- Beğeni
- 4
- Puan
- 23
- Ticaret Puanı
- 0
Herkese iyi forumlar,
Son zamanlarda birkaç arkadaşa yardım ederken hep aynı şeyi gördüm: yedek diye klasörler kopyalanıyor, "Source_yedek", "Source_yedek2", "Source_son_hali" diye gidiyor. Sonra bir şey bozulunca hangi dosya ne zaman değişti kimse bilmiyor. Geçen gün bir arkadaşta eski bir yedekle yenisi karışınca yarım günümüz gitti.
Yazılımcılar bu işi Git ile yapıyor. Tecrübeli arkadaşlar zaten kullanıyordur, bilmeyenler için kısaca anlatayım. Göründüğü kadar zor değil, 10 dakikada başlarsınız.
Ne kazandırıyor?
Kurduktan sonra bir kere şunu yapın (Başlat > Git Bash):
Önemli notlar
Takılan olursa yazsın, yardımcı olurum.
Son zamanlarda birkaç arkadaşa yardım ederken hep aynı şeyi gördüm: yedek diye klasörler kopyalanıyor, "Source_yedek", "Source_yedek2", "Source_son_hali" diye gidiyor. Sonra bir şey bozulunca hangi dosya ne zaman değişti kimse bilmiyor. Geçen gün bir arkadaşta eski bir yedekle yenisi karışınca yarım günümüz gitti.
Yazılımcılar bu işi Git ile yapıyor. Tecrübeli arkadaşlar zaten kullanıyordur, bilmeyenler için kısaca anlatayım. Göründüğü kadar zor değil, 10 dakikada başlarsınız.
Ne kazandırıyor?
- Her değişikliği bir notla kaydediyorsunuz ("kostüm sistemi eklendi" gibi)
- Hangi dosyada, hangi satırda, ne zaman ne değişti görüyorsunuz
- Bir sistem eklediniz, her şey bozuldu mu? Tek komutla eski haline dönüyorsunuz
- Koca klasörleri kopyalamıyorsunuz, sadece değişen kısımlar saklanıyor
Linkleri görebilmek için
giriş yap veya kayıt ol.
adresinden "Git for Windows"u indirip kurun. Kurulumda her şeyi varsayılan bırakabilirsiniz.Kurduktan sonra bir kere şunu yapın (Başlat > Git Bash):
Kod:
git config --global user.name "isminiz"
git config --global user.email "mailiniz"
Source klasörünüze girin, boş bir yere sağ tık > Open Git Bash here:
Sonra aynı klasöre .gitignore adında bir dosya oluşturup içine şunu yazın. Bu dosya derleme çıktılarının ve gereksiz dosyaların kayda girmesini engelliyor, yoksa repo şişer:
Not: Release/Debug klasörü adını sizin projede başka bir şey için kullanıyorsanız o satırları ona göre düzenleyin. Extern klasöründeki .lib dosyalarını engellemeyin, onlar derleme için lazım. Şifre içeren başka ayar dosyalarınız varsa onları da en alta ekleyin.
Sonra ilk kaydı alın:
Kod:
git init
Sonra aynı klasöre .gitignore adında bir dosya oluşturup içine şunu yazın. Bu dosya derleme çıktılarının ve gereksiz dosyaların kayda girmesini engelliyor, yoksa repo şişer:
Kod:
# Visual Studio
.vs/
*.obj
*.pdb
*.ilk
*.ipch
*.idb
*.iobj
*.ipdb
*.tlog
*.log
**/Debug/
**/Release/
# FreeBSD derleme
*.o
*.d
*.core
syserr
syslog
# Şifre ve IP içeren ayarlar
CONFIG
Not: Release/Debug klasörü adını sizin projede başka bir şey için kullanıyorsanız o satırları ona göre düzenleyin. Extern klasöründeki .lib dosyalarını engellemeyin, onlar derleme için lazım. Şifre içeren başka ayar dosyalarınız varsa onları da en alta ekleyin.
Sonra ilk kaydı alın:
Kod:
git add .
git commit -m "ilk hali"
Bir iş bitirdiğinizde (sistem ekleme, hata düzeltme):
Neler değişmiş görmek için:
Kod:
git add .
git commit -m "ne yaptığınızı yazın"
Neler değişmiş görmek için:
Kod:
git status (hangi dosyalar değişti)
git diff (değişen satırlar)
git log (geçmiş kayıtlar)
Tek bir dosyayı son kayıttaki haline döndürmek için:
Kaydetmediğiniz bütün değişiklikleri çöpe atmak için:
Dikkat: Kaydedilmemiş her şeyi siler, emin değilseniz kullanmayın.
Kod:
git checkout -- dosya_adi.cpp
Kaydetmediğiniz bütün değişiklikleri çöpe atmak için:
Kod:
git reset --hard
Sistem eklemeden önce ayrı bir dal açın:
Sistem çalışmazsa ana dala dönersiniz, hiçbir şey olmamış gibi devam edersiniz:
(Bazı kurulumlarda ana dalın adı "main" olabilir.)
Kod:
git checkout -b sistem-deneme
Sistem çalışmazsa ana dala dönersiniz, hiçbir şey olmamış gibi devam edersiniz:
Kod:
git checkout master
Önemli notlar
- Veritabanı Git'e girmez. Onu ayrıca yedekleyin (Navicat'ten "Dump SQL File" ya da mysqldump).
- Şifre içeren ayar dosyalarını kayda koymayın.
- GitHub gibi bir yere yükleyecekseniz repo mutlaka PRIVATE olsun. Source'unuzu yanlışlıkla herkese açmayın.
- Komut sevmeyenler GitHub Desktop ya da VS Code'un Git ekranını kullanabilir, aynı işi tıklayarak yapıyorsunuz.
Takılan olursa yazsın, yardımcı olurum.