Comment préparer et charger un projet existant sur GitHub ?

Effectué

Dans cette unité, nous abordons les points importants relatifs au chargement d’un projet sur GitHub.

Pourquoi charger sur GitHub ?

Vous trouverez de manière abondante de la littérature vantant les vertus de GitHub. Ce module n’a pas pour vocation de vous convaincre de rejoindre les rangs des utilisateurs de GitHub. Toutefois, dans ce module, nous récapitulons certains avantages clés liés aux aspects que vous devez prendre en compte quand vous planifiez votre chargement.

Gestion de version

GitHub utilise exclusivement Git, sans doute le meilleur système de gestion de versions existant actuellement. Néanmoins, Git est incroyablement sophistiqué, et peut créer des scénarios complexes d’utilisation du code que votre équipe ne connaît peut-être pas. Les branches et les demandes de tirage (pull requests) occupent une partie essentielle du quotidien des développeurs qui utilisent Git. Il est donc nécessaire de savoir quand et comment vous en servir efficacement pour une bonne expérience sur GitHub. Il est utile pour votre équipe de commencer par se familiariser avec le flux GitHub pour pouvoir devenir rapidement opérationnelle.

Garder votre code dans le cloud

Une grande partie du code de projet est toujours stockée exclusivement sur les ordinateurs des développeurs. Lorsque vous effectuez un chargement sur GitHub, vous déplacez votre code vers la plateforme cloud de GitHub, où les membres de l’équipe peuvent y accéder facilement où qu’ils soient. Ce changement offre une bonne opportunité de passer en revue la stratégie de votre équipe concernant les types de fichiers et de données que vous gardez dans la gestion de versions. En guise de meilleure pratique, vous devez partir du principe que tout ce que vous commitez dans GitHub est potentiellement compromis. Veillez donc à ne pas inclure de données sensibles, par exemple des clés API, des mots de passe ou autres fichiers contenant des informations de cette nature.

Remarque

GitHub offre à la fois des dépôts publics et privés, ainsi que des contrôles d’accès précis pour différentes parties d’un dépôt. Ceci vous permet de contrôler à qui vos projets sont visibles et quelle action un utilisateur donné peut effectuer.

Collaboration

GitHub offre une excellente prise en charge de la collaboration d’équipe grâce à des fonctionnalités comme les problèmes, les demandes de tirage et les revues de code. Toutefois, le flux GitHub peut différer des pratiques auxquelles votre équipe est actuellement habituée. Il est judicieux de réfléchir à la façon dont votre équipe peut s’adapter à GitHub, et de déterminer si vous devez conserver ou non les processus existants.

Si votre projet est un projet open source qui autorise des contributeurs externes, rien de mieux que GitHub pour optimiser ces avantages.

Charger sur GitHub

Considérations relatives au plan

La chose la plus importante à prendre en compte avant d’exécuter votre chargement sur GitHub est de savoir si vous devez conserver quoi que ce soit à part l’état actuel de votre source. Par exemple, vous pouvez utiliser un tableur ou un logiciel de gestion de projet pour effectuer le suivi des bogues que vous comptez corriger. La prise en charge de la migration de ces éléments varie selon la plateforme. Elle est généralement disponible dans les projets de la communauté. Ce module ne couvre pas la migration de ce type de données.

Gérer les fichiers binaires actuellement stockés dans votre projet

Comme bonne pratique, les dépôts GitHub doivent être limités aux fichiers nécessaires à la génération de projets. Évitez de commiter de gros fichiers binaires comme les artefacts de build. Pour suivre les fichiers binaires tels que les feuilles de calcul et les présentations, les portails qui comprennent comment les traiter et les versionner correctement conviennent mieux. Si vous avez besoin de versionner de gros fichiers binaires, utilisez l’extension Git Git LFS (Large File Storage).

Créer des fichiers Git importants tels que .gitignore

Git prend en charge les fichiers .gitignore pour faciliter l’application de stratégies de fichiers de gestion de versions. Ces fichiers définissent les modèles de recherche utilisés pour exclure des fichiers et des dossiers du suivi du contrôle de code source. L’exemple suivant exclut de manière récursive tous les dossiers nommés Bin ou bin ainsi que leur contenu, du suivi du contrôle de code source.

[Bb]in/

Pour en savoir plus, consultez Ignoring files. Consultez également la collection de fichiers .gitignore de démarrage proposés pour différentes plateformes dans le dépôt gitignore.

Il existe plusieurs autres fichiers couramment utilisés dans les projets GitHub pour expliquer différentes stratégies aux consommateurs et contributeurs du dépôt. Même si votre projet est privé et limité à un public restreint, il peut toujours être utile d’exprimer de manière explicite ces stratégies. Même si aucun de ces fichiers n’est obligatoire, certains fichiers courants sont listés ici.

File Objectif
README.md Page d’accueil du répertoire. Cette page s’affiche quand son répertoire apparaît dans GitHub.
LICENSE.md Ce fichier contient la licence sous laquelle le code est fourni.
CONTRIBUTING.md Explique comment les utilisateurs doivent contribuer au projet, par exemple en matière de demande de tirage.
SECURITY.md Explique la stratégie de sécurité du projet. Ce fichier fournit des conseils d’aide aux utilisateurs qui souhaitent envoyer du code ou des commentaires sensibles du point de vue de la sécurité, et qui ne doivent pas être divulgués publiquement avant d’avoir été traités.

Découvrez-en davantage sur la configuration de votre projet pour des contributions saines.

Charger votre projet sur GitHub

Une fois votre dépôt prêt pour le chargement, créez un dépôt sur GitHub. Une fois créé, accédez à l’onglet Code de votre dépôt GitHub. Cette vue vous propose plusieurs façons de charger votre code de projet.

Screenshot of importing code to a GitHub repository.

Il est recommandé d’utiliser le client git ou un outil compatible Git pour charger votre source. Vous pouvez aussi charger manuellement vos fichiers en utilisant le lien création d’un nouveau fichier. Au fil du temps, vous constaterez probablement que l’utilisation d’un client git est le meilleur moyen de gérer les changements, les branches, etc.