Ulaşım
- Adres:Batıkent Mh. 8910 Sk. 6. Etap 1H No: 18 Yeni Toki Eyyübiye / Şanlıurfa (Yeni Alım Satım Karşısı)
- Telefon:0 (545) 528 88 93
- eMail: info@alestaweb.com
Git versiyon kontrol sistemi ve Claude Code AI asistanı ile projelerinizi profesyonelce yönetin! Ubuntu ve CloudLinux sunucularda adım adım kurulum, yerel geliştirme ortamı hazırlama rehberi.
Modern web geliştirme süreçlerinde versiyon kontrolü ve AI destekli kodlama araçları artık standart haline gelmiştir. Git ve Claude Code kombinasyonunun avantajları:
| Özellik | FTP + Manuel | Git + Claude Code |
|---|---|---|
| Versiyon Takibi | ❌ Yok | ✅ Detaylı |
| Geri Alma | ❌ Zor | ✅ Kolay |
| Takım Çalışması | ❌ Karışık | ✅ Organize |
| AI Desteği | ❌ Yok | ✅ Claude Code |
| Deployment | Manuel | ✅ Otomatik |
Git ve Claude Code kurulumu öncesi kontrol listesi:
# Tipik web projesi dizini
/home/kullaniciadi/
├── public_html/ # Web dosyaları
│ ├── index.php
│ ├── config.php
│ ├── assets/
│ ├── pages/
│ └── .htaccess
├── public_html.git/ # Bare Git repository (oluşturacağız)
└── backups/ # Yedekler
Ubuntu 22.04 LTS üzerinde Git kurulumu ve yapılandırması:
# Terminal veya PuTTY ile bağlan
ssh root@sunucu-ip-adresi
# Örnek
ssh root@192.168.1.100
# Şifre girdikten sonra sunucuya bağlanacaksınız
# Git kurulu mu kontrol et
git --version
# Paket listesini güncelle
apt update
# Git'i kur
apt install git -y
# Kurulumu doğrula
git --version
# Çıktı: git version 2.34.1 (veya daha yeni)
# Kullanıcı bilgilerini ayarla
git config --global user.name "Adınız Soyadınız"
git config --global user.email "email@siteniz.com"
# Varsayılan branch adını ayarla (main veya master)
git config --global init.defaultBranch master
# Ayarları kontrol et
git config --list
# Çıktı:
# user.name=Adınız Soyadınız
# user.email=email@siteniz.com
# init.defaultbranch=master
# Proje klasörüne git
cd /home/kullaniciadi/public_html
# Git repository başlat
git init
# .gitignore dosyası oluştur
nano .gitignore
.gitignore içeriği:
# Geçici dosyalar
*.log
*.tmp
*.cache
*.swp
*~
# Yedek dosyalar
*.bak
*.backup
*.old
# Sıkıştırılmış dosyalar
*.zip
*.rar
*.tar.gz
*.7z
# Özel dosyalar
.env
config.php.bak
.htaccess.bak
# IDE dosyaları
.vscode/
.idea/
# Bağımlılıklar
node_modules/
vendor/
# Büyük dosyalar
*.sql
*.mp4
*.mov
# Bu hatayı alırsanız, güvenli dizin olarak ekleyin
git config --global --add safe.directory /home/kullaniciadi/public_html
# Tüm dosyaları ekle
git add .
# Durumu kontrol et
git status
# İlk commit'i oluştur
git commit -m "İlk commit - mevcut site"
# Çıktı:
# [master (root-commit) abc1234] İlk commit - mevcut site
# 35 files changed, 2500 insertions(+)
# Ana dizine geç
cd /home/kullaniciadi
# Bare repository oluştur
git init --bare public_html.git
# Hook dosyası oluştur (otomatik deployment için)
cd public_html.git/hooks
nano post-receive
post-receive içeriği:
#!/bin/bash
GIT_WORK_TREE=/home/kullaniciadi/public_html git checkout -f
# Çalıştırma izni ver
chmod +x post-receive
# public_html klasörüne geri dön
cd /home/kullaniciadi/public_html
# Remote repository ekle
git remote add origin /home/kullaniciadi/public_html.git
# Master branch'i push et
git push origin master
CloudLinux 8 RHEL tabanlıdır, paket yöneticisi farklıdır:
# Sistem bilgisi kontrol
cat /etc/os-release
# Git kurulu mu?
git --version
# DNF ile kurulum (önerilen)
dnf install git -y
# Alternatif: YUM ile kurulum
yum install git -y
# Kurulumu doğrula
git --version
# Çıktı: git version 2.43.7 (veya daha yeni)
Claude Code yerel bilgisayarınızda çalışır ve sunucudaki projeyi Git üzerinden yönetir:
Hata: "File cannot be loaded because running scripts is disabled on this system"
# CMD'yi yönetici olarak açın
# Win + X → Command Prompt (Admin)
# Claude Code'u kurun
npm install -g @anthropic-ai/claude-code
# PowerShell'i yönetici olarak açın
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# Y tuşuna basıp onaylayın
# Sonra npm komutunu çalıştırın
# Node.js kurulu mu?
node --version
npm --version
# Kurulu değilse:
# 1. nodejs.org adresine gidin
# 2. LTS versiyonu indirin (20.x önerilen)
# 3. Kurulum sihirbazını takip edin
# 4. Bilgisayarı yeniden başlatın
# npm ile global kurulum
npm install -g @anthropic-ai/claude-code
# Kurulumu kontrol et
claude-code --version
# Hata alırsanız terminali kapatıp açın
# Çalışma klasörüne git
cd C:\Users\Kullanici\Projeler
# Sunucudan projeyi klonla
git clone root@sunucu-ip:/home/kullaniciadi/public_html.git site-local
# Şifre soracak, root şifrenizi girin
# Proje klasörüne gir
cd site-local
# Dosyaları listele
dir # Windows
ls # Mac/Linux
# Proje klasöründe Claude Code'u başlat
claude-code .
# İlk açılışta soracak:
# Select login method:
# 1. Claude account with subscription
# 2. Anthropic Console account
# 1'i seçin (aboneliğiniz varsa)
# Tarayıcı açılacak, giriş yapın
# Otomatik bağlanacak
# Claude Code soracak:
# Set up CLAUDE.md for this project?
# 1. Yes, run /init
# 2. No, maybe later
# 1'i seçin
# Claude projeyi analiz edip CLAUDE.md oluşturacak
Sebep: PATH değişkenine eklenmemiş veya kurulum tamamlanmamış.
Çözümler:
# Terminal'i kapatıp açın
# Alternatif: npx ile çalıştırın
npx @anthropic-ai/claude-code .
# PATH'e manuel ekleme (Windows)
setx PATH "%PATH%;%APPDATA%\npm"
Çözüm: SSH Anahtarı Oluşturma
# Yerel bilgisayarda (Windows PowerShell)
ssh-keygen -t rsa -b 4096
# Enter'a basarak varsayılanları kabul edin
# Passphrase boş bırakabilirsiniz
# Public key'i sunucuya kopyala
type C:\Users\Kullanici\.ssh\id_rsa.pub | ssh root@sunucu-ip "cat >> ~/.ssh/authorized_keys"
# Mac/Linux'ta
ssh-copy-id root@sunucu-ip
Çözüm:
# Sunucuda dosya izinlerini düzelt
chmod -R 755 /home/kullaniciadi/public_html
chown -R kullaniciadi:kullaniciadi /home/kullaniciadi/public_html
# Git için özel
chmod -R 755 .git
chmod 600 .git/config
Sebep: Remote'da olmayan değişiklikler var.
# Önce pull yapın
git pull origin master
# Conflict varsa çözün
git status # Çakışan dosyaları görün
# Dosyaları düzenleyin
git add .
git commit -m "Conflict çözüldü"
git push origin master
# Force push (DİKKAT: uzaktaki değişiklikleri ezer)
git push -f origin master
Çözüm:
# .gitignore'a ekleyin
echo "*.sql" >> .gitignore
echo "*.zip" >> .gitignore
# Geçmişten kaldırın
git rm --cached büyük-dosya.sql
git commit -m "Büyük dosya kaldırıldı"
# Git LFS kullanın (büyük dosyalar için)
git lfs track "*.psd"
git lfs track "*.zip"
Git ve Claude Code ile tipik bir günlük çalışma akışı:
# 1. Proje klasörüne git
cd C:\Projeler\site-local
# 2. Sunucudan son değişiklikleri al
git pull origin master
# 3. Claude Code'u başlat
claude-code .
Türkçe komut örnekleri:
# 1. Değişiklikleri kontrol et
git status
# 2. Değişiklikleri ekle
git add .
# veya belirli dosyalar
git add index.php style.css
# 3. Commit oluştur (anlamlı mesaj!)
git commit -m "Navbar responsive düzeltmeleri, footer sosyal medya ikonları eklendi"
# 4. Sunucuya gönder
git push origin master
# Site otomatik güncellenecek!
# Değişiklikleri görme
git diff # Unstaged değişiklikler
git diff --staged # Staged değişiklikler
# Geçmişi görme
git log --oneline # Kısa özet
git log --graph # Grafik görünüm
git log -p # Detaylı değişiklikler
# Geri alma işlemleri
git checkout -- dosya.php # Dosyayı eski haline döndür
git reset --hard HEAD~1 # Son commit'i tamamen sil
git revert HEAD # Son commit'i geri al (yeni commit)
# Branch işlemleri
git branch yeni-ozellik # Yeni branch oluştur
git checkout yeni-ozellik # Branch'e geç
git merge yeni-ozellik # Branch'i master'a birleştir
# Stash (geçici saklama)
git stash # Değişiklikleri sakla
git stash pop # Geri getir
git stash list # Saklananları listele
| ❌ Kötü | ✅ İyi |
|---|---|
| fix | Ürün sayfasında fiyat görüntüleme hatası düzeltildi |
| update | Ana sayfa slider resimleri güncellendi |
| changes | İletişim formu validation ve spam koruması eklendi |
| asdf | Footer'a WhatsApp butonu ve çalışma saatleri eklendi |
# Feature branch oluştur
git checkout -b feature/yeni-tasarim
# Çalış, commit yap
git add .
git commit -m "Yeni tasarım implementasyonu"
# Master'a geç ve birleştir
git checkout master
git merge feature/yeni-tasarim
# Branch'i sil
git branch -d feature/yeni-tasarim
# GitHub repo ekle
git remote add github https://github.com/kullanici/proje.git
# Her iki yere de push
git push origin master
git push github master
# Tüm remote'ları gör
git remote -v
# Pre-commit hook oluştur
nano .git/hooks/pre-commit
#!/bin/bash
# PHP syntax kontrolü
for file in $(git diff --cached --name-only | grep "\.php$"); do
php -l "$file"
if [ $? -ne 0 ]; then
echo "PHP syntax hatası: $file"
exit 1
fi
done
# İzin ver
chmod +x .git/hooks/pre-commit
# .gitattributes oluştur
nano .gitattributes
# İçerik
*.php text eol=lf
*.js text eol=lf
*.css text eol=lf
*.jpg binary
*.png binary
*.pdf binary
# Line ending sorunlarını önler
Tebrikler! Git ve Claude Code ile profesyonel bir geliştirme ortamı kurdunuz!
Kurduğunuz Sistemin Özellikleri:
En İyi Uygulamalar:
git pullİleri Seviye Adımlar:
⚠️ Güvenlik İpuçları:
Faydalı Kaynaklar:
Başarılar! Artık profesyonel bir geliştirme ortamına sahipsiniz!
Destek: Sorun yaşarsanız alestaweb.com üzerinden iletişime geçebilirsiniz.