Workflow Git·

Utiliser GitHub Desktop pour simplifier les mises à jour de FiveM et repérer chaque changement

Un guide sans ligne de commande pour les propriétaires de serveurs FiveM : utilisez GitHub Desktop pour voir exactement ce qui a changé dans une mise à jour, conservez vos propres modifications de configuration et revenez instantanément en arrière si quelque chose casse.

Introduction

Chaque propriétaire de serveur connaît ce sentiment. Une nouvelle version d'une ressource sort, le changelog indique "remplacez le dossier /config/framework", et vous restez figé — parce que vous avez passé des heures à ajuster ces fichiers et vous n'avez aucune idée de ce que la mise à jour a réellement modifié. Écrasez-vous tout en perdant votre travail ? Ignorez-vous le dossier au risque de casser le script ? Copiez-vous les lignes manuellement en espérant n'avoir rien oublié ?

Il existe une bien meilleure façon — et vous n'avez pas besoin de taper une seule commande. Avec une application gratuite appelée GitHub Desktop, vous pouvez voir exactement ce qui a changé dans n'importe quelle mise à jour, conserver vos propres personnalisations en toute sécurité, et revenir en arrière en quelques secondes, le tout via une interface simple en point-clic.

Qu'est-ce que Git, et qu'est-ce que GitHub Desktop ?

Git est un système de contrôle de version — voyez cela comme un historique d'annulation illimité et parfait pour un dossier. Chaque fois que vous enregistrez un instantané (appelé un commit), il enregistre l'état exact de chaque fichier. Plus tard, vous pouvez comparer n'importe quels deux instantanés ligne par ligne, restaurer un état antérieur ou fusionner des changements.

GitHub Desktop est une application visuelle gratuite qui simplifie Git grâce à des boutons conviviaux. Pas de terminal noir, pas de commandes à mémoriser — juste une fenêtre claire qui vous montre ce qui a changé et vous permet de valider, d'annuler et de fusionner en un clic.

Pour un serveur FiveM, le dossier que vous suivez est votre répertoire resources (ou un script unique à l'intérieur). Git transforme "Je pense avoir changé quelque chose ici il y a quelques semaines" en "montre-moi précisément ce qui a changé entre le mois dernier et aujourd'hui."

GitHub Desktop fonctionne complètement localement. Vous n'avez pas besoin d'envoyer quoi que ce soit sur Internet — chaque fonctionnalité de ce guide s'exécute hors ligne sur votre propre machine ou VPS. Vous préférez une autre application ? Sourcetree, GitKraken, Fork, et le panneau Contrôle de source intégré de VS Code font tous le même travail ; les concepts ci-dessous s'appliquent directement.

Pourquoi c'est parfait pour les mises à jour de ressources

Mettre à jour un script de manière traditionnelle signifie travailler à l'aveugle. Git vous donne trois super-pouvoirs :

  1. Détection de changements — après avoir installé une nouvelle version, GitHub Desktop met en évidence chaque fichier modifié et chaque ligne modifiée. Le journal des modifications vous indique quels dossiers remplacer ; Git vous montre ce qui a réellement changé afin que vous puissiez lui faire confiance.
  2. Personnalisation sécurisée — vos modifications sont enregistrées dans des commits. Lorsqu'une mise à jour d'un fournisseur touche le même fichier, Git peut fusionner les deux ensembles de modifications, conservant les vôtres et les leurs.
  3. Retour en arrière instantané — si une mise à jour fait planter votre serveur, vous n'êtes qu'à un clic de l'état exact que vous aviez il y a cinq minutes. Fini la panique du "où ai-je mis cette sauvegarde".
Cela s'associe parfaitement avec les ressources protégées par escrow comme Sky-Systems. Le dossier crypté source/ ne change jamais de votre côté, tandis que tout ce que vous modifiez réellement se trouve dans le dossier en texte clair config/. Git suit config/ magnifiquement — ce qui est exactement l'endroit où vos personnalisations et les mises à jour du fournisseur se rencontrent.

Configuration unique avec GitHub Desktop

Vous ne le faites qu'une seule fois par serveur.

Installer GitHub Desktop

Téléchargez et installez-le depuis desktop.github.com. Vous pouvez ignorer ou fermer l'invite de connexion — un compte en ligne n'est nécessaire que si vous souhaitez sauvegarder sur GitHub, ce que ce guide ne requiert pas.

Ajouter votre dossier de ressources

Dans la barre de menu, cliquez sur File → Add local repository, puis Choose… et sélectionnez votre dossier resources.

GitHub Desktop remarquera qu'il n'est pas encore suivi et affichera : "This directory does not appear to be a Git repository." Cliquez sur le lien "create a repository" qu'il propose. Sur l'écran suivant, laissez les paramètres par défaut et cliquez sur Create repository.

Protégez vos données confidentielles

Un FiveM serveur contient des données sensibles qui ne doivent jamais être sauvegardées dans votre historique. Dans GitHub Desktop, ouvrez Repository → Repository settings → Ignored files et ajoutez des règles comme celles-ci :

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

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

Vous pouvez également faire un clic droit sur n'importe quel fichier dans la liste Changes et choisir Ignore file (ou Ignore all files of this type) — GitHub Desktop l'ajoute à .gitignore pour vous.

Ne commitez jamais d'identifiants. Les mots de passe de base de données, votre sv_licenseKey, les secrets Tebex, les jetons Discord et les URLs de webhook doivent rester hors de Git. Ajoutez-les à la liste d'exclusion avant votre premier commit — une fois qu'un élément est commité, il reste dans l'historique.

Prenez votre premier snapshot

Basculez sur l'onglet Changes (barre latérale gauche). Chaque fichier apparaît dans la liste. Dans la boîte Summary en bas à gauche, tapez quelque chose comme Baseline: working server before updates, puis cliquez sur Commit to main.

Terminé. Vous avez désormais un filet de sécurité sous l'ensemble de votre serveur.

Ne publiez pas vos ressources payantes. Si GitHub Desktop propose un bouton bleu "Publish repository", ne l'utilisez pas pour tout script sous licence ou protégé par escrow. L'envoi de ces fichiers vers un dépôt public viole la licence et expose le contenu payant. Gardez le dépôt local uniquement.

Le flux de travail de mise à jour

C'est la routine que vous répétez pour chaque mise à jour. Cela prend environ une minute.

Commitez votre état actuel

Ouvrez GitHub Desktop et vérifiez l'onglet Changes. Si des éléments sont listés, commitez-les d'abord avec un résumé comme Pre-update snapshot, afin que la mise à jour se distingue clairement. Si la liste est vide, vous êtes prêt.

Installez la nouvelle version

Arrêtez votre serveur, puis extrayez la nouvelle version de la ressource par-dessus les anciens fichiers, en les écrasant — exactement comme l'indique le changelog (par exemple, "remplacez le dossier /config/framework"). Ne vous inquiétez pas de perdre quoi que ce soit ; votre état précédent est sauvegardé en toute sécurité par commit.

Voyez exactement ce qui a changé

Retournez sur GitHub Desktop et ouvrez l'onglet Changes. C'est le moment magique : chaque fichier touché par la mise à jour est listé, et cliquer sur l'un d'eux affiche ses modifications ligne par ligne — lignes supprimées en rouge, lignes ajoutées en vert.

Vous pouvez désormais lire précisément ce que la mise à jour a fait — nouvelles options de config, valeurs par défaut modifiées, clés renommées — au lieu de deviner.

Parcourez la liste des fichiers et comparez-la au journal des modifications. Si le journal indique que seuls config/framework et config/banking ont changé, ce devraient être les dossiers que vous voyez ici. Tout élément inattendu mérite un examen attentif avant de valider votre commit.

Réconcilier vos personnalisations

Si la mise à jour a écrasé un fichier que vous aviez personnalisé, le diff affichera vos paramètres en rouge (supprimés) et les valeurs par défaut du fournisseur en vert (ajoutées). Ouvrez ce fichier dans votre éditeur, réappliquez vos valeurs — le diff montre exactement quelles lignes — et enregistrez. GitHub Desktop met à jour la comparaison en direct pendant que vous tapez.

Pour une réconciliation entièrement automatique, consultez l'Astuce Pro ci-dessous.

Valider la mise à jour

Une fois que tout semble correct et que votre serveur démarre proprement, retournez sur l'onglet Changes, saisissez un résumé comme Update sky_base to 1.21.0, et cliquez sur Commit to main.

Vous disposez désormais d'un point de contrôle étiqueté auquel vous pouvez toujours revenir.


Revenir en arrière en cas de problème

Une mise à jour se comporte mal ? Restez calme — GitHub Desktop vous offre plusieurs options, de la plus douce à la plus radicale.

Annuler les modifications non validées. Dans l'onglet Changes, sélectionnez les fichiers (ou tous), faites un clic droit et choisissez Discard Changes / Discard All Changes. Cela les restaurera à votre dernier commit.

Retournez à un instantané précédent. Ouvrez l'onglet History dans la barre latérale gauche pour voir chaque instantané que vous avez créé :

  • Pour annuler en toute sécurité une mise à jour tout en conservant un historique propre, faites un clic droit sur le commit erroné et choisissez Revert Changes in Commit. Cela crée un nouveau commit d'« annulation » — rien n'est perdu.
  • Pour revenir complètement à un état antérieur, faites un clic droit sur l'instantané souhaité et choisissez Reset to commit.
Reset to commit ramène votre projet à cet instantané. Effectuez un commit ou un stash de tout ce que vous souhaitez conserver au préalable. En cas de doute, privilégiez Revert Changes in Commit — c'est l'option non destructive.

Mettez vos changements de côté temporairement — pratique pour tester une mise à jour sur une base propre, puis récupérer votre travail. Faites un clic droit sur l'en-tête Changed files et choisissez Stash All Changes. Pour les récupérer, sélectionnez Stashed Changes dans la barre latérale et cliquez sur Restore.

GitHub Desktop ne conserve qu'un stash à la fois — effectuer un nouveau stash remplace le précédent. Utilisez-le pour des détours courts et temporaires, et utilisez les commits pour tout ce que vous souhaitez conserver.

Astuce de pro : Fusion automatique des mises à jour fournisseur

Fatigué de réappliquer manuellement vos modifications de config après chaque mise à jour ? GitHub Desktop peut le faire pour vous en utilisant une fusion à trois voies.

L'idée : conservez une branche avec les versions fournisseurs d'origine et une autre avec vos modifications par-dessus.

Créer une branche fournisseur

Cliquez sur le menu déroulant Current Branch en haut, puis sur New Branch, et nommez-la vendor. Cette branche ne contiendra que des fichiers fournisseurs non modifiés.

Enregistrez chaque version sur la branche du fournisseur

Lorsqu'une nouvelle version sort, passez sur la branche vendor (menu déroulant Current Branch), extrayez les fichiers de la version unmodified par-dessus, puis validez-les avec un résumé tel que Vendor sky_base 1.21.0.

Fusionnez la mise à jour avec vos modifications

Repassez sur votre branche main (menu déroulant Current Branch). Ensuite, ouvrez Branch → Merge into current branch…, choisissez vendor, et cliquez sur merge.

GitHub Desktop combine automatiquement les changements du fournisseur avec vos personnalisations. Il s'arrête uniquement pour vous demander une action lorsqu'une mise à jour modifie les mêmes lignes exactes que vous avez personnalisées — et il affiche un écran clair pour résoudre ces quelques points. Partout ailleurs, les deux ensembles de changements sont conservés pour vous.

C'est la même technique que les équipes professionnelles utilisent pour suivre les bibliothèques amont sans perdre les modifications locales — et cela fonctionne tout aussi bien pour votre serveur.


Vous préférez la ligne de commande ?

Si vous êtes à l'aise avec un terminal, l'intégralité du flux de travail ci-dessus correspond à une poignée de commandes :

# 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

Bonnes pratiques

  • Validez avant chaque mise à jour. Un instantané prend deux secondes et fait gagner des heures.
  • Écrivez des résumés clairs. Update sky_base to 1.21.0 est préférable à stuff lorsque vous parcourez l'historique six mois plus tard.
  • Gardez les secrets ignorés. Les identifiants ne doivent jamais figurer dans l'historique des versions.
  • Validez après un démarrage propre, pas avant. Ne marquez un instantané comme "bon" qu'une fois que le serveur fonctionne réellement.
  • Suivez tout votre dossier resources dans un seul dépôt. De cette façon, un seul rollback peut permettre de se rétablir d'une mauvaise mise à jour pour n'importe quel script.
  • Gardez cela en local. Ne publiez jamais de ressources sous licence ou protégées par escrow sur un dépôt public.

Conclusion

Mettre à jour un serveur FiveM ne signifie plus faire des suppositions, perdre vos personnalisations ou chercher frénétiquement des sauvegardes. Avec une configuration unique via GitHub Desktop et une routine d'une minute, vous pouvez voir chaque changement effectué par une mise à jour, conserver vos propres modifications intactes, et annuler instantanément toute erreur — le tout sans taper une seule commande.

La prochaine fois qu'un journal des modifications vous demandera de remplacer un dossier, vous le ferez en toute confiance — car GitHub Desktop vous montrera exactement ce qui a changé, à chaque fois.