Alur Kerja Git·

Menggunakan GitHub Desktop untuk Menyederhanakan Pembaruan FiveM dan Mendeteksi Setiap Perubahan

Panduan tanpa baris perintah untuk pemilik server FiveM: gunakan GitHub Desktop untuk melihat secara tepat apa yang berubah dalam sebuah pembaruan, simpan pengeditan konfigurasi Anda sendiri, dan kembalikan secara instan saat terjadi kesalahan.

Pendahuluan

Setiap pemilik server tahu rasanya. Versi resource baru rilis, changelog mengatakan "ganti folder /config/framework", dan Anda terpaku — karena Anda menghabiskan waktu berjam-jam untuk menyetel file tersebut dan Anda tidak tahu apa yang sebenarnya diubah oleh pembaruan tersebut. Apakah Anda menimpanya dan kehilangan hasil kerja Anda? Melewatkan folder tersebut dan berisiko merusak script? Menyalin baris demi baris secara manual dan berharap Anda tidak melewatkan apa pun?

Ada cara yang jauh lebih baik — dan Anda tidak perlu menyentuh satu perintah pun. Dengan aplikasi gratis bernama GitHub Desktop, Anda dapat melihat secara tepat apa yang berubah dalam pembaruan apa pun, menjaga kustomisasi Anda tetap aman, dan kembali ke versi sebelumnya dalam hitungan detik, semuanya melalui antarmuka klik-dan-pilih yang sederhana.

Apa Itu Git, dan Apa Itu GitHub Desktop?

Git adalah sistem kontrol versi — anggap saja sebagai riwayat undo yang sempurna dan tak terbatas untuk sebuah folder. Setiap kali Anda menyimpan snapshot (disebut commit), ia mencatat status tepat dari setiap file. Nantinya Anda dapat membandingkan dua snapshot mana pun baris demi baris, memulihkan status sebelumnya, atau menggabungkan perubahan bersama-sama.

GitHub Desktop adalah aplikasi visual gratis yang menghadirkan Git melalui tombol-tombol yang ramah pengguna. Tanpa terminal hitam, tanpa perintah yang harus dihafal — cukup jendela jelas yang menunjukkan apa yang berubah dan memungkinkan Anda melakukan commit, undo, dan merge dengan satu klik.

Untuk server FiveM, folder yang Anda lacak adalah direktori resources Anda (atau satu skrip di dalamnya). Git mengubah "Sepertinya saya mengubah sesuatu di sini beberapa minggu lalu" menjadi "tunjukkan kepada saya secara tepat apa yang berubah antara bulan lalu dan hari ini."

GitHub Desktop bekerja sepenuhnya secara lokal. Anda tidak perlu mengunggah apa pun ke internet — setiap fitur dalam panduan ini berjalan secara offline di mesin atau VPS Anda sendiri. Lebih suka aplikasi lain? Sourcetree, GitKraken, Fork, dan panel Source Control bawaan di VS Code semuanya melakukan pekerjaan yang sama; konsep di bawah ini berlaku secara langsung.

Mengapa Ini Sempurna untuk Pembaruan Resource

Memperbarui skrip dengan cara tradisional berarti bekerja tanpa penglihatan. Git memberi Anda tiga kekuatan super:

  1. Deteksi perubahan — setelah memasukkan versi baru, GitHub Desktop menyoroti setiap file yang berubah dan setiap baris yang berubah. Changelog memberi tahu Anda folder mana yang harus diganti; Git menunjukkan kepada Anda apa yang sebenarnya berubah sehingga Anda dapat mempercayainya.
  2. Kustomisasi aman — editan Anda tersimpan dalam commit. Ketika pembaruan vendor menyentuh file yang sama, Git dapat menggabungkan (merge) kedua set perubahan tersebut, menjaga milik Anda dan milik mereka.
  3. Rollback instan — jika pembaruan merusak server Anda, Anda hanya berjarak satu klik dari keadaan tepat seperti lima menit yang lalu. Tidak ada kepanikan "di mana saya menaruh cadangan itu".
Ini berpasangan sempurna dengan resource yang dilindungi escrow seperti Sky-Systems. Folder source/ yang terenkripsi tidak pernah berubah di sisi Anda, sementara semua yang benar-benar Anda edit berada di folder plaintext config/. Git melacak config/ dengan sangat baik — yang merupakan tempat di mana kustomisasi Anda dan pembaruan vendor bertemu.

Pengaturan Sekali Jalan dengan GitHub Desktop

Anda hanya perlu melakukan ini sekali per server.

Instal GitHub Desktop

Unduh dan instal dari desktop.github.com. Anda dapat melewati atau menutup perintah masuk — akun online hanya diperlukan jika Anda ingin mencadangkan ke GitHub, yang mana panduan ini tidak perlukan.

Tambahkan Folder Resource Anda

Di bilah menu, klik File → Add local repository, lalu Choose… dan pilih folder resources Anda.

GitHub Desktop akan menyadari bahwa folder tersebut belum dilacak dan menampilkan: "This directory does not appear to be a Git repository." Klik tautan "create a repository" yang ditawarkan. Pada layar berikutnya, biarkan pengaturan default dan klik Create repository.

Lindungi Rahasia Anda

Sebuah FiveM server menyimpan data sensitif yang tidak boleh disimpan ke dalam riwayat Anda. Di GitHub Desktop, buka Repository → Repository settings → Ignored files dan tambahkan aturan seperti ini:

# Never track secrets
**/*.env
**/secrets.lua
server.cfg

# Caches, logs, build output
**/cache/
**/logs/
**/.DS_Store

Anda juga dapat mengeklik kanan file apa pun di daftar Changes dan pilih Ignore file (atau Ignore all files of this type) — GitHub Desktop akan menambahkannya ke .gitignore untuk Anda.

Jangan pernah menyertakan kredensial. Kata sandi database, sv_licenseKey Anda, rahasia Tebex, token Discord, dan URL webhook harus tetap berada di luar Git. Tambahkan mereka ke daftar ignore sebelum commit pertama Anda — setelah sesuatu di-commit, ia akan tetap ada dalam riwayat.

Ambil Snapshot Pertama Anda

Pindah ke tab Changes (sidebar kiri). Setiap file muncul dalam daftar. Di kotak Summary di kiri bawah, ketik sesuatu seperti Baseline: working server before updates, lalu klik Commit to main.

Selesai. Anda sekarang memiliki jaring pengaman untuk seluruh server Anda.

Jangan publikasikan resource berbayar Anda. Jika GitHub Desktop menawarkan tombol biru "Publish repository", biarkan saja untuk script berlisensi atau yang dilindungi escrow. Mengunggah file tersebut ke repositori publik melanggar lisensi dan mengekspos konten berbayar. Tetap jaga repositori hanya lokal.

Alur Kerja Pembaruan

Ini adalah rutinitas yang Anda ulangi untuk setiap pembaruan. Membutuhkan waktu sekitar satu menit.

Commit Status Saat Ini

Buka GitHub Desktop dan periksa tab Changes. Jika ada yang terdaftar, commit terlebih dahulu dengan ringkasan seperti Pre-update snapshot, agar pembaruan terlihat jelas. Jika daftar kosong, Anda siap.

Masukkan Versi Baru

Hentikan server Anda, lalu ekstrak rilis resource baru di atas file lama, menimpanya — persis seperti instruksi changelog (misalnya, "ganti folder /config/framework"). Jangan khawatir kehilangan apa pun; status sebelumnya telah di-commit dengan aman.

Lihat Apa Saja yang Berubah

Kembali ke GitHub Desktop dan buka tab Changes. Ini adalah momen ajaib: setiap file yang disentuh oleh pembaruan terdaftar, dan mengklik salah satunya akan menunjukkan perubahannya baris demi baris — baris yang dihapus berwarna merah, baris yang ditambahkan berwarna hijau.

Anda sekarang dapat membaca secara tepat apa yang dilakukan pembaruan tersebut — opsi konfigurasi baru, perubahan default, perubahan nama kunci — alih-alih menebak-nebak.

Lihat daftar file dan bandingkan dengan changelog. Jika changelog menyatakan hanya config/framework dan config/banking yang berubah, maka folder-folder itulah yang seharusnya Anda lihat di sini. Hal apa pun yang tidak terduga perlu diperiksa lebih teliti sebelum Anda melakukan commit.

Sinkronkan Kustomisasi Anda

Jika pembaruan menimpa file yang telah Anda kustomisasi, diff akan menunjukkan pengaturan Anda dalam warna merah (dihapus) dan default vendor dalam warna hijau (ditambahkan). Buka file tersebut di editor Anda, terapkan kembali nilai Anda — diff menunjukkan baris mana tepatnya — dan simpan. GitHub Desktop memperbarui perbandingan secara langsung saat Anda mengetik.

Untuk sinkronisasi otomatis sepenuhnya, lihat Tips Pro di bawah ini.

Commit Pembaruan

Setelah semuanya terlihat benar dan server Anda menyala dengan bersih, kembali ke tab Changes, masukkan ringkasan seperti Update sky_base to 1.21.0, dan klik Commit to main.

Anda sekarang memiliki titik pemeriksaan berlabel yang selalu dapat Anda kembalikan.


Rollback Saat Terjadi Masalah

Pembaruan berperilaku tidak semestinya? Tetap tenang — GitHub Desktop memberi Anda beberapa opsi, dari yang ringan hingga opsi drastis.

Batalkan perubahan yang belum di-commit. Di tab Changes, pilih file (atau semuanya), klik kanan, dan pilih Discard Changes / Discard All Changes. Ini mengembalikannya ke commit terakhir Anda.

Kembali ke snapshot sebelumnya. Buka tab History di sidebar kiri untuk melihat setiap snapshot yang telah Anda buat:

  • Untuk membatalkan secara aman sebuah pembaruan sambil tetap menjaga catatan yang bersih, klik kanan pada commit yang salah dan pilih Revert Changes in Commit. Ini akan membuat commit "undo" baru — tidak ada yang hilang.
  • Untuk kembali sepenuhnya ke keadaan sebelumnya, klik kanan pada snapshot yang Anda inginkan dan pilih Reset to commit.
Reset to commit akan mengembalikan proyek Anda ke snapshot tersebut. Lakukan commit atau stash pada apa pun yang masih ingin Anda simpan terlebih dahulu. Jika ragu, gunakan Revert Changes in Commit — ini adalah opsi non-destruktif.

Simpan perubahan Anda untuk sementara — praktis untuk menguji pembaruan dengan keadaan bersih, lalu mengembalikan pekerjaan Anda. Klik kanan pada header Changed files dan pilih Stash All Changes. Untuk mendapatkannya kembali, pilih Stashed Changes di sidebar dan klik Restore.

GitHub Desktop hanya menyimpan satu stash dalam satu waktu — melakukan stash lagi akan menggantikan yang sebelumnya. Gunakan ini untuk penyimpangan singkat dan sementara, dan gunakan commit untuk apa pun yang ingin Anda simpan.

Tips Pro: Penggabungan Otomatis Pembaruan Vendor

Lelah menerapkan ulang pengeditan config Anda secara manual setelah setiap pembaruan? GitHub Desktop dapat melakukannya untuk Anda menggunakan three-way merge.

Konsepnya: simpan satu branch dengan rilis vendor asli dan satu lagi dengan edit Anda di atasnya.

Buat Vendor Branch

Klik dropdown Current Branch di bagian atas, lalu New Branch, dan beri nama vendor. Branch ini hanya akan berisi file vendor yang tidak tersentuh.

Catat Setiap Rilis pada Cabang Vendor

Saat versi baru muncul, pindah ke cabang vendor (dropdown Current Branch), ekstrak file rilis yang tidak dimodifikasi secara menimpa, lalu commit dengan ringkasan seperti Vendor sky_base 1.21.0.

Gabungkan Pembaruan ke Dalam Editan Anda

Kembali ke cabang main Anda (dropdown Current Branch). Kemudian buka Branch → Merge into current branch…, pilih vendor, dan klik merge.

GitHub Desktop secara otomatis menggabungkan perubahan vendor dengan kustomisasi Anda. Ia hanya akan berhenti untuk bertanya saat pembaruan mengubah baris yang sama persis yang Anda kustomisasi — dan ia menampilkan layar yang jelas untuk menyelesaikan beberapa titik tersebut. Di bagian lain, kedua set perubahan tetap disimpan untuk Anda.

Ini adalah teknik yang sama yang digunakan tim profesional untuk melacak pustaka upstream tanpa kehilangan perubahan lokal — dan ini bekerja sama baiknya untuk server Anda.


Lebih Memilih Command Line?

Jika Anda nyaman menggunakan terminal, seluruh alur kerja di atas dapat dipetakan ke beberapa perintah:

# 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

Praktik Terbaik

  • Commit sebelum setiap pembaruan. Sebuah snapshot hanya butuh dua detik dan menghemat waktu berjam-jam.
  • Tulis ringkasan yang jelas. Update sky_base to 1.21.0 lebih baik daripada stuff saat Anda memindai riwayat enam bulan kemudian.
  • Pastikan rahasia tetap dikecualikan dari pelacakan Git. Kredensial tidak boleh ada dalam riwayat versi.
  • Commit setelah boot yang bersih, bukan sebelumnya. Beri label snapshot sebagai "baik" hanya setelah server benar-benar berjalan.
  • Lacak seluruh folder resources Anda dalam satu repositori. Dengan begitu, satu rollback dapat memulihkan dari pembaruan buruk ke setiap script.
  • Simpan secara lokal. Jangan pernah mempublikasikan sumber daya berlisensi atau yang dilindungi escrow ke repositori publik.

Kesimpulan

Memperbarui server FiveM tidak lagi berarti menebak-nebak, kehilangan kustomisasi, dan mencari cadangan secara panik. Dengan pengaturan GitHub Desktop satu kali dan rutinitas satu menit, Anda dapat melihat setiap perubahan yang dibuat oleh pembaruan, menjaga editan Anda tetap utuh, dan membatalkan kesalahan apa pun secara instan — semuanya tanpa mengetik satu perintah pun.

Lain kali saat changelog menyuruh Anda mengganti folder, Anda akan melakukannya dengan percaya diri — karena GitHub Desktop akan menunjukkan kepada Anda apa yang berubah secara tepat, setiap saat.