FiveM Güncellemelerini Basitleştirmek ve Her Değişikliği Tespit Etmek İçin GitHub Desktop Kullanımı
Giriş
Her sunucu sahibi bu hissi bilir. Yeni bir kaynak sürümü yayınlanır, değişiklik günlüğü "/config/framework klasörünü değiştirin" der ve donup kalırsınız — çünkü o dosyaları ayarlamak için saatler harcadınız ve güncellemenin gerçekte neye dokunduğu hakkında hiçbir fikriniz yok. Üzerine yazıp çalışmanızı kaybeder misiniz? Klasörü atlayıp scriptin bozulması riskini mi alırsınız? Satırları elle ileri geri kopyalayıp bir şeyi kaçırmadığınızı mı umarsınız?
Çok daha iyi bir yol var — ve tek bir komuta bile dokunmanıza gerek yok. GitHub Desktop adlı ücretsiz bir uygulama ile, basit bir tıkla yönetilen arayüz üzerinden herhangi bir güncellemede tam olarak neyin değiştiğini görebilir, kendi özelleştirmelerinizi güvende tutabilir ve saniyeler içinde geri yükleme yapabilirsiniz.
Git Nedir ve GitHub Desktop Nedir?
Git bir versiyon kontrol sistemidir — bunu bir klasör için sınırsız, mükemmel bir geri alma geçmişi olarak düşünün. Her bir anlık görüntü ( commit olarak adlandırılır) kaydettiğinizde, her dosyanın tam durumunu kaydeder. Daha sonra herhangi iki anlık görüntüyü satır satır karşılaştırabilir, önceki bir durumu geri yükleyebilir veya değişiklikleri birleştirebilirsiniz.
GitHub Desktop Git'i kullanıcı dostu butonların arkasına yerleştiren ücretsiz, görsel bir uygulamadır. Siyah terminal yok, ezberlenecek komutlar yok — sadece neyin değiştiğini gösteren ve tek bir tıklamayla commit yapmanıza, geri almanıza ve birleştirmenize olanak tanıyan net bir pencere.
Bir FiveM sunucusu için takip ettiğiniz klasör, resources dizininizdir (veya içindeki tek bir scripttir). Git, "Birkaç hafta önce burada bir şeyleri değiştirdiğimi sanıyorum" ifadesini şuna dönüştürür: "geçen aydan bugüne tam olarak neyin değiştiğini bana göster."
Bu Neden Kaynak Güncellemeleri İçin Mükemmeldir
Bir scripti geleneksel yöntemle güncellemek, körleme çalışmak anlamına gelir. Git size üç süper güç verir:
- Değişiklik algılama — yeni bir sürüm yükledikten sonra GitHub Desktop, değişen her dosyayı ve değişen her satırı vurgular. Değişiklik günlüğü size hangi klasörlerin değiştirileceğini söyler; Git, güvenebilmeniz için aslında neyin değiştiğini gösterir.
- Güvenli özelleştirme — düzenlemeleriniz commit'lerde yaşar. Bir satıcı güncellemesi aynı dosyaya dokunduğunda, Git iki değişiklik setini birleştirebilir, sizinkini ve onlarınkini korur.
- Anında geri yükleme — bir güncelleme sunucunuzu bozarsa, beş dakika önceki tam durumunuza tek bir tıklama uzaklıktasınız. "Yedeği nereye koymuştum" paniği yok.
source/ klasörü sizin tarafınızda asla değişmez, düzenlediğiniz her şey ise düz metin halindeki config/ klasöründe bulunur. Git, config/ sürecini harika bir şekilde takip eder — ki bu, özelleştirmelerinizin ve satıcının güncellemelerinin birleştiği tam noktadır.GitHub Desktop ile Tek Seferlik Kurulum
Bunu her sunucu için yalnızca bir kez yaparsınız.
GitHub Desktop'ı Kurun
desktop.github.com adresinden indirin ve kurun. Oturum açma istemesini atlayabilir veya kapatabilirsiniz — çevrimiçi bir hesap, yalnızca GitHub'a yedekleme yapmak isterseniz gereklidir; bu kılavuz bunun için gereksinim duymaz.
Kaynak Klasörünüzü Ekleyin
Menü çubuğunda File → Add local repository seçeneğine, ardından Choose… kısmına tıklayın ve resources klasörünüzü seçin.
GitHub Desktop bunun henüz takip edilmediğini fark edecek ve şunu gösterecektir: "This directory does not appear to be a Git repository." Sunduğu "create a repository" bağlantısına tıklayın. Bir sonraki ekranda varsayılan ayarları bırakın ve Create repository butonuna tıklayın.
Gizli Bilgilerinizi Koruyun
Bir FiveM sunucusu, geçmişinize asla kaydedilmemesi gereken hassas veriler barındırır. GitHub Desktop'ta Repository → Repository settings → Ignored files yolunu açın ve şu gibi kurallar ekleyin:
# Never track secrets
**/*.env
**/secrets.lua
server.cfg
# Caches, logs, build output
**/cache/
**/logs/
**/.DS_Store
Ayrıca Changes listesindeki herhangi bir dosyaya sağ tıklayıp Ignore file (veya Ignore all files of this type) seçeneğini seçebilirsiniz — GitHub Desktop bunu .gitignore dosyasına sizin yerinize ekler.
sv_licenseKey değeriniz, Tebex sırları, Discord tokenları ve webhook URL'leri Git dışında tutulmalıdır. Bunları ilk commit işleminizden önce ignore listesine ekleyin — bir şey bir kez commit edildiğinde geçmişte kalır.İlk Anlık Görüntünüzü Alın
Sol yan menüdeki Changes sekmesine geçin. Her dosya listede görünür. Sol alttaki Summary kutusuna Baseline: working server before updates gibi bir şey yazın, ardından Commit to main butonuna tıklayın.
Tamamlandı. Artık tüm sunucunuzun altında bir güvenlik ağı var.
Güncelleme İş Akışı
Bu, her güncelleme için tekrarladığınız rutindir. Yaklaşık bir dakika sürer.
Mevcut Durumunuzu Commit Edin
GitHub Desktop'ı açın ve Changes sekmesini kontrol edin. Eğer listede bir şey varsa, güncellemenin temiz bir şekilde öne çıkması için önce Pre-update snapshot gibi bir özetle commit edin. Liste boşsa, hazırsınız demektir.
Yeni Versiyonu Yerleştirin
Sunucunuzu durdurun, ardından yeni kaynak sürümünü eski dosyaların üzerine (değişiklik günlüğünün talimatlarına tam olarak uyarak — örneğin, "/config/framework klasörünü değiştir") üzerine yazacak şekilde çıkarın. Bir şeyleri kaybetme konusunda endişelenmeyin; önceki durumunuz güvenli bir şekilde commit edildi.
Tam Olarak Ne Değiştiğini Görün
GitHub Desktop'a geri dönün ve Changes sekmesini açın. İşte sihirli an: güncellemenin dokunduğu her dosya listelenir ve birine tıkladığınızda değişiklikleri satır satır görürsünüz — kırmızı renkte silinen satırlar, yeşil renkte eklenen satırlar.
Artık tahmin yürütmek yerine güncellemenin tam olarak ne yaptığını —yeni yapılandırma seçenekleri, değiştirilen varsayılanlar, yeniden adlandırılan anahtarlar— okuyabilirsiniz.
config/framework ve config/banking'in değiştiğini söylüyorsa, burada gördüğünüz klasörler bunlar olmalıdır. Beklenmedik bir durum varsa, commit etmeden önce yakından incelemeye değer.Özelleştirmelerinizi Uzlaştırın
Eğer güncelleme sizin özelleştirdiğiniz bir dosyanın üzerine yazdıysa, fark (diff) ekranı sizin ayarlarınızı kırmızı (silinen), satıcının varsayılanlarını ise yeşil (eklenen) olarak gösterecektir. O dosyayı düzenleyicinizde açın, değerlerinizi yeniden uygulayın —fark ekranı tam olarak hangi satırlar olduğunu gösterir— ve kaydedin. GitHub Desktop, siz yazarken karşılaştırmayı canlı olarak günceller.
Tam otomatik bir uzlaştırma için aşağıdaki Pro İpucu kısmına bakın.
Güncellemeyi Commit Edin
Her şey doğru göründüğünde ve sunucunuz sorunsuz bir şekilde açıldığında, Changes sekmesine geri dönün, Update sky_base to 1.21.0 gibi bir özet girin ve Commit to main butonuna tıklayın.
Artık her zaman geri dönebileceğiniz etiketlenmiş bir kontrol noktanız var.
Bir Şeyler Bozulduğunda Geri Alma
Güncelleme hatalı mı çalışıyor? Sakin olun — GitHub Desktop, hafif yöntemlerden radikal yöntemlere kadar size birkaç seçenek sunar.
Commit edilmemiş değişiklikleri geri al. Changes sekmesinde dosyaları (veya hepsini) seçin, sağ tıklayın ve Discard Changes / Discard All Changes seçeneğini seçin. Bu, dosyaları son commit halinize geri döndürür.
Daha önceki bir anlık görüntüye geri dön. Oluşturduğunuz her anlık görüntüyü görmek için sol kenar çubuğundaki History sekmesini açın:
- Temiz bir kayıt tutarak bir güncellemeyi güvenli bir şekilde geri almak için, hatalı commit'e sağ tıklayın ve Revert Changes in Commit seçeneğini seçin. Bu, yeni bir "geri alma" commit'i oluşturur — hiçbir şey kaybolmaz.
- Tamamen daha önceki bir duruma geri sarmak için, istediğiniz anlık görüntüye sağ tıklayın ve Reset to commit seçeneğini seçin.
Değişikliklerinizi geçici olarak kenara kaldırın — bir güncellemeyi temiz bir sayfa ile test etmek ve ardından çalışmanızı geri getirmek için kullanışlıdır. Changed files başlığına sağ tıklayın ve Stash All Changes seçeneğini seçin. Onları geri almak için kenar çubuğunda Stashed Changes öğesini seçin ve Restore butonuna tıklayın.
İpucu: Otomatik Birleştirme ile Vendor Güncellemeleri
Her güncellemeden sonra konfigürasyon düzenlemelerinizi elle tekrar uygulamaktan yoruldunuz mu? GitHub Desktop, üç yönlü birleştirme kullanarak bunu sizin yerinize yapabilir.
Mantık: Bir dalı saf vendor sürümleri ile, diğerini ise üzerine kendi düzenlemeleriniz ile tutun.
Bir Vendor Dalı Oluştur
Üstteki Current Branch açılır menüsüne, ardından New Branch seçeneğine tıklayın ve adını vendor koyun. Bu dal yalnızca dokunulmamış vendor dosyalarını içerecektir.
Her Sürümü Satıcı Dalında Kaydedin
Yeni bir sürüm çıktığında, vendor dalına (Current Branch açılır menüsü) geçiş yapın, değiştirilmemiş sürüm dosyalarını üzerine çıkarın ve ardından Vendor sky_base 1.21.0 gibi bir özetle commit edin.
Güncellemeyi Düzenlemelerinizle Birleştirin
Tekrar main dalınıza (Current Branch açılır menüsü) geçin. Ardından Branch → Merge into current branch… seçeneğini açın, vendor dalını seçin ve birleştirin.
GitHub Desktop, satıcının değişikliklerini özelleştirmelerinizle otomatik olarak birleştirir. Sadece bir güncelleme, özelleştirdiğiniz tam olarak aynı satırları değiştirdiğinde durup size sorar ve bu birkaç noktayı çözmeniz için net bir ekran gösterir. Diğer her yerde, her iki değişiklik seti de sizin için saklanır.
Bu, profesyonel ekiplerin yerel değişiklikleri kaybetmeden upstream kütüphanelerini takip etmek için kullandığı aynı tekniktir ve sunucunuz için de aynı derecede iyi çalışır.
Komut Satırını mı Tercih Ediyorsunuz?
Terminal kullanmaya alışıksanız, yukarıdaki iş akışının tamamı birkaç komuta karşılık gelir:
# One-time setup (run inside your resources folder)
git init
git add .
git commit -m "Baseline: working server before updates"
# Each update
git add . && git commit -m "Pre-update snapshot" # snapshot first
# ...drop in the new release, overwriting files...
git status # which files changed
git diff --stat # a compact per-file summary
git diff # full line-by-line changes
git add . && git commit -m "Update sky_base to 1.21.0"
# Rolling back
git restore <file> # undo changes to one file
git restore . # undo all uncommitted changes
git log --oneline # find a snapshot
git reset --hard <id> # rewind to it (destructive)
git stash / git stash pop # shelve and restore temporarily
En İyi Uygulamalar
- Her güncellemeden önce commit edin. Bir anlık görüntü almak iki saniye sürer ve saatler kazandırır.
- Net özetler yazın. Altı ay sonra geçmişi tararken
Update sky_base to 1.21.0gibi bir özet,stuffgibi bir özetten çok daha iyidir. - Gizli bilgileri görmezden gelinen olarak tutun. Kimlik bilgileri asla sürüm geçmişinde yer almamalıdır.
- Temiz bir başlatma sonrasında commit edin, öncesinde değil. Bir anlık görüntüyü ancak sunucu gerçekten çalıştığında "iyi" olarak etiketleyin.
- Tüm
resourcesklasörünüzü tek bir depoda takip edin. Bu sayede tek bir geri yükleme, herhangi bir scriptin hatalı bir güncellemesinden kurtulmanızı sağlayabilir. - Yerel tutun. Lisanslı veya escrow korumalı kaynakları asla halka açık bir depoda yayınlamayın.
Sonuç
Bir FiveM sunucusunu güncellemek artık tahmin yürütmek, özelleştirmelerin kaybolması ve panik içinde yedek aramayı gerektirmiyor. Tek seferlik bir GitHub Desktop kurulumu ve bir dakikalık bir rutin ile, güncellemenin yaptığı her değişikliği görebilir, kendi düzenlemelerinizi koruyabilir ve herhangi bir hatayı anında geri alabilirsiniz — üstelik tek bir komut bile yazmadan.
Bir sonraki değişiklik günlüğü (changelog) size bir klasörü değiştirmenizi söylediğinde, bunu güvenle yapacaksınız; çünkü GitHub Desktop her seferinde size tam olarak neyin değiştiğini gösterecek.
Sky Mission Hub İçin Windows Sunucu Saati Nasıl Senkronize Edilir?
FiveM sunucunuzdaki Windows saatini senkronize edin, zaman kaynağını doğrulayın ve zaman damgası güncel olmadığı için reddedilen Mission Hub isteklerini düzeltin.
Neden FiveM için Hepsi Bir Arada Polis Sistemleri Daha Uygun Maliyetlidir
FiveM polis sistemleri için pratik bir piyasa fiyat kontrolü. Benzer polis özelliklerini tek tek satın almanın maliyeti ile entegre bir paket seçmenin maliyetini, 80 EUR tutarındaki standart yaşam boyu fiyatı referans alarak karşılaştırıyoruz.