Hata: listen tcp :3000: bind: address already in use
Çözüm:
# 3000 portunu kullanan işlemi bul
lsof -i :3000 # Linux/macOS
netstat -ano | findstr :3000 # Windows
# İşlemi sonlandır
kill -9 <PID> # Linux/macOS
taskkill /PID <PID> /F # Windows
# Veya farklı port kullan
./gityar web -p 3001
Hata: Failed to connect to database
Çözümler:
SQLite:
# Yazma izinlerini kontrol et
chmod 755 data/
MySQL:
[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = gityar
USER = gityar
PASSWD = correct_password
PostgreSQL:
[database]
DB_TYPE = postgres
HOST = 127.0.0.1:5432
NAME = gityar
USER = gityar
PASSWD = correct_password
SSL_MODE = disable
Olası nedenler:
Şifre Sıfırlama:
Çözümler:
app.ini içinde:
[auth]
ENABLE_LDAP = true
[ldap]
HOST = ldap.example.com:389
BASE_DN = dc=example,dc=com
Hata: Permission denied
Çözümler:
Depo erişimini kontrol edin:
Kimlik doğrulamayı kontrol edin:
# SSH test
ssh -T git@localhost
# HTTP test
curl -u username:password http://localhost:3000/user/repo.git/info/refs
Branch korumasını kontrol edin:
HTTP:
# URL'yi kontrol et
git clone http://localhost:3000/user/repo.git
# Kimlik bilgileriyle
git clone http://username:password@localhost:3000/user/repo.git
SSH:
# SSH anahtarını kontrol et
ssh -T git@localhost
# Ayrıntılı
GIT_SSH_COMMAND="ssh -v" git clone git@localhost:user/repo.git
Nedenler:
Çözüm:
cd your-repo
git status
git log --all
git branch -a
# Eğer boşsa, ilk commit'i oluştur
echo "# Benim Projem" > README.md
git add .
git commit -m "İlk commit"
git push origin main
Çözümler:
Önbelleklemeyi etkinleştir:
[cache]
ADAPTER = memory
INTERVAL = 60
Ters proxy kullan:
Veritabanını optimize et:
# MySQL
mysqlcheck -o gityar -u root -p
# PostgreSQL
vacuumdb -d gityar
Kaynakları artır:
Çözümler:
Git otomatik çöp toplamayı etkinleştir:
[repository]
ENABLE_AUTO_GIT_GC = true
GC_AUTO_THRESHOLD = 100
Sığ clone kullan:
git clone --depth 50 http://localhost:3000/user/repo.git
Büyük dosyalar için LFS'yi etkinleştir
Yapılandırmayı kontrol et:
[mailer]
ENABLED = true
HOST = smtp.example.com:587
FROM = gityar@example.com
USER = gityar@example.com
PASSWD = password
IS_TLS_ENABLED = true
Bağlantıyı test et:
telnet smtp.example.com 587
Logları kontrol et:
tail -f log/gityar.log | grep mailer
Kontrol listesi:
Web kancayı test et:
Logları kontrol et:
tail -f log/gityar.log | grep webhook
log/gityar.log
log/http.log
app.ini içinde:
[log]
MODE = file
LEVEL = Info # Trace, Debug, Info, Warn, Error, Critical
[log]
LEVEL = Debug
gityar'ı yeniden başlatın ve ayrıntılı bilgi için logları kontrol edin.
Yedekleme:
# SQLite
cp data/gityar.db gityar-backup.db
# MySQL
mysqldump -u root -p gityar > backup.sql
# PostgreSQL
pg_dump gityar > backup.sql
Geri Yükleme:
# SQLite
cp gityar-backup.db data/gityar.db
# MySQL
mysql -u root -p gityar < backup.sql
# PostgreSQL
psql gityar < backup.sql
SQLite'dan MySQL'e:
app.ini güncelleÇözüm:
# Templates dizinini kontrol et
ls templates/
# Kaynaktan yeniden derle
go build -o gityar ./cmd/gityar
Çözüm:
# Public dizinini kontrol et
ls public/
# Yeniden derle veya yeniden başlat
./gityar web
Çözüm:
/docs/docs/faqŞunları dahil edin: