WebTools Git/fr

Remarque : à partir de FreeCAD v0.17, cet outil a été enlevé de l'atelier Arch et fait maintenant partie de l'atelier externe WebTools qui peut être installé depuis le menu Outils → Addons Manager.

Description
Cette commande permet de gérer le document actif via GIT. GIT est un puissant système de révisions de versions, et peut gérer des versions différentes de fichiers et garder une trace des changements.

Git est un outil complexe, considérez d'en apprendre les bases avant d'utiliser cet outil, afin d'éviter des opérations malavisées qui pourraient causer des pertes de données. Une littérature abondante sur Git est disponible et facile à trouver sur Internet.

Prérequis: pour pouvoir utiliser cette commande, le paquet gitpython doit être installé sur votre système. Sur la plupart des distributions Linux, gitpython est disponible à partir des dépôts de logiciels standards sous le nom gitpython ou python-git.

Utilisation

 * 1) Assurez-vous que la Vue rapport est ouverte car les messages Git y seront affichés.
 * 2) Enregistrez le document actif actuel en vous assurant que le fichier enregistré se trouve dans un dépôt git existant. Cela peut être dans un sous-répertoire.
 * 3) Sélectionnez le menu
 * 4) Ceci ouvre un Panneau des tâches dans la Vue combo.

Options



 * Le bouton Log fera apparaître une boîte de dialogue affichant les entrées de journal les plus récentes. La sortie correspond à.
 * Le bouton Refresh analysera à nouveau le dépôt pour les fichiers modifiés. Après avoir enregistré votre travail, vous devez effectuer une mise à jour manuelle.
 * Le bouton Diff affichera les différences entre la version actuelle d'un fichier sélectionné et la version la plus récente stockée dans le dépôt. La sortie correspond à.
 * Par défaut, un diff binaire est fait, vous devez configurer l'outil  pour la différence textuelle.
 * Le bouton Select all sélectionnera tous les fichiers à valider.
 * Le bouton Commit validera les fichiers sélectionnés. Veillez à rédiger un message de validation décrivant les modifications que vous effectuez.
 * Le bouton Pull va télécharger toutes les nouvelles modifications apportées au dépôt à partir du dépôt sélectionné. Si le fichier actuellement ouvert dans FreeCAD est en cours de modification par pull (extraction), un message d'avertissement vous en informera afin que vous puissiez soit enregistrer à nouveau le fichier, soit l'enregistrer ailleurs.
 * Le bouton Push va télécharger votre ou vos derniers commit(s) sur le dépôt sélectionné.

Limitations

 * L'outil ne peut pas créer de nouveaux dépôts pour l'instant. Vous devez avoir créé au préalable un dépôt local. (FreeCAD vérifiera si le document courant est dans un dépôt Git.)
 * L'outil ne peut pas changer ou créer des branches. Vous devez le faire manuellement avec les outils Git standard.

Activation des différences lisibles par l'homme pour les fichiers FCStd avec l'utilitaire fcinfo
Le format de fichier Fcstd de FreeCAD est un format binaire au format zip, pour lequel Git ne peut pas produire de diffs corrects. Cela signifie que vous ne pouvez pas voir ce qui a changé entre les versions et que chaque nouvelle version stockée dans le référentiel Git est une copie complète du fichier.

Bien que le second problème n’ait actuellement pas de solution, le premier peut être résolu avec un petit outil disponible dans le code source de FreeCAD, appelé fcinfo. On peut dire à Git d’utiliser l’utilitaire fcinfo pour imprimer un rapport convivial pour un fichier FCStd et que, s’il est invité à produire un diff entre deux fichiers FCStd, il produira un diff entre les deux rapports fcinfo. Veuillez noter qu'il ne s'agit que d'un retour visuel. Une copie complète du fichier sera toujours stockée en interne.

Exemple de diff produit avec fcinfo:

Chaque fichier FreeCAD contient un numéro de somme de contrôle SHA1, qui change à chaque sauvegarde du fichier, même si aucun contenu n'a été modifié. Donc, fcinfo imprimera toujours quelque chose, peu importe les changements de contenu.

Pour activer l'utilisation de fcinfo (Linux et Mac uniquement - TODO: ajouter des instructions Windows)

*.FCStd diff=fcinfo Ajoutez les lignes suivantes au fichier  dans votre répertoire personnel: [diff "fcinfo"] textconv = /path/to/fcinfo Alternativement, si vous souhaitez invoquer fcinfo avec des arguments (par exemple, ) utilisez cette approche : [diff "fcinfo"] textconv = sh -c '/path/to/fcinfo --gui "$0"'
 * 1) Enregistrez le fichier fcinfo quelque part dans votre chemin système
 * 2) Rendre exécutable
 * 3) Créez un fichier   dans votre dépôt Git et ajoutez-y la ligne suivante: