Ajouter un fichier sur GitLab : Les méthodes essentielles
Pourquoi ajouter des fichiers à votre projet ?
Dans le monde du développement, un projet vide n'est qu'une coquille. Les fichiers sont les briques qui composent votre application. Que ce soit du code source, de la documentation ou des fichiers de configuration, chaque ajout permet de faire progresser votre travail de manière concrète.
Imaginez que votre projet GitLab est un chantier de construction. Créer le dépôt était l'étape de préparation du terrain. Ajouter des fichiers sur GitLab, c'est commencer à poser les briques pour monter les murs. Plus vous ajoutez de fichiers organisés, plus votre "maison" logicielle prend forme et devient fonctionnelle.
Sur GitLab, il existe deux méthodes principales pour enrichir votre dépôt : passer par la ligne de commande (CLI) ou utiliser directement l'interface web de GitLab. Nous allons voir comment maîtriser ces deux approches.
Ajouter un fichier via la ligne de commande (CLI)
C'est la méthode préférée des développeurs car elle est rapide et permet d'automatiser beaucoup de tâches. C'est aussi la manière la plus propre de travailler quand vous avez déjà effectué le clonage du projet sur votre ordinateur.
Créer le fichier localement
Placez-vous dans le dossier de votre projet et utilisez la commande suivante pour créer un nouveau fichier vide :
touch mon_nouveau_fichier.txt
Vérifier la présence du fichier
Vous pouvez vérifier que le fichier a bien été créé en listant le contenu de votre répertoire :
ls -l
Résultat :
total 4
-rw-r--r-- 1 utilisateur groupe 0 Apr 21 16:20 mon_nouveau_fichier.txt
-rw-r--r-- 1 utilisateur groupe 150 Apr 21 15:45 README.md
Information importante
N'oubliez pas qu'après la création du fichier, vous devez effectuer un git add, un git commit et un git push pour envoyer vos modifications afin qu'elles soient visibles par vos collègues sur GitLab.
Ajouter un fichier via l'interface Web
Parfois, vous avez juste besoin de faire une petite modification ou d'ajouter une note rapide sans vouloir ouvrir votre terminal. Pour cela, l'interface web de GitLab est idéale car elle inclut un éditeur de texte intégré permettant d'enregistrer des modifications en quelques clics.
Accéder au menu d'ajout
Depuis le tableau de bord de votre projet, cherchez le bouton avec le symbole + situé juste à côté du sélecteur de branche. Cliquez dessus et choisissez l'option New file.
"Le bouton plus permet d'effectuer des actions rapides sur le dépôt"
Rédiger le contenu
Donnez un nom à votre fichier (par exemple NewDemoFile) et écrivez votre texte dans l'éditeur. Pour valider l'ajout, vous devez descendre en bas de page et cliquer sur le bouton Commit changes.
"L'éditeur web est parfait pour des modifications textuelles simples"
Confirmation du succès
Une fois que vous avez validé, GitLab vous affiche un message de confirmation vert. Votre fichier est maintenant officiellement enregistré dans l'historique de votre projet.
Conclusion
Vous savez maintenant comment enrichir votre projet, que ce soit en mode expert avec le terminal ou de manière plus visuelle avec l'interface web. Gérer ses fichiers sur GitLab est la base du quotidien d'un développeur moderne.
Cependant, plus vous ajoutez de fichiers et de modifications, plus l'historique de votre projet peut devenir complexe. Parfois, il est nécessaire de "réorganiser" cet historique pour qu'il reste propre. C'est ce qu'on appelle l'opération de Rebase Git, que nous allons explorer dans le prochain chapitre.
Espace commentaire
Écrire un commentaire
Rejoignez la discussion
Vous devez être connecté pour poster un message.
25 commentaires
Oui, fais juste un
rm fichier.txt. Comme il n'a pas été ajouté à l'index avecgit add, il n'existe pas pour Git.Question bête : après avoir créé le fichier avec
touch, je peux le supprimer avant de commiter ?Merci pour l'astuce du
git pull --rebase, ça a réglé mon souci de conflit.Quelqu'un a pushé des modifs avant toi. Fais un
git pull --rebaseavant de retenter ton push.J'ai une erreur 'updates were rejected because the remote contains work that you do not have locally'. Une idée ?
C'est exactement ça. En CLI, tu peux faire plusieurs commits avant de push, c'est beaucoup plus propre pour l'historique.
L'interface web fait tout en une seule fois : add + commit + push. En CLI, tu découpes les étapes pour plus de contrôle.
C'est quoi la différence entre 'Commit changes' dans l'interface web et le
git commitlocal ?T'as juste à faire
git add .puisgit commit --amend --no-edit. Ça va intégrer tes modifs oubliées au dernier commit.J'ai fait un
git commitsans faire degit add, forcément mon fichier n'est pas passé. Comment je rattrape ça sans annuler mon commit ?Tu dois être en mode 'Reporter' ou 'Guest'. Il faut au moins le rôle 'Developer' pour avoir le droit de pusher ou créer des fichiers sur la branche courante.
Le bouton '+' dont tu parles pour l'interface web, il n'apparaît pas chez moi. J'ai raté un droit ?
Si
touchdéconne, fais justeecho "" > fichier.txt. Ça fait exactement la même chose.Sur Windows avec Git Bash, le
touchne marche pas toujours. Une alternative ?Fais un
git status. C'est l'outil indispensable pour voir ce qui est tracké ou non.Comment je fais pour vérifier si mon fichier est bien pris en compte par Git après le
touch?Exact, ne jamais pusher de gros binaires directement dans le repo. Utilisez Git LFS ou un bucket S3. Le repo va exploser en taille sinon.
L'interface Web c'est bien pour les petits fichiers, mais pour les binaires, Git c'est pas fait pour ça. Utilisez Git LFS.
J'ai essayé de push un gros fichier binaire et ça a échoué. Ça passe via l'interface Web ou c'est pareil ?
Oui, dans l'interface web, quand tu crées un nouveau fichier, tu peux taper le chemin complet dans le champ nom, genre
dossier/sous-dossier/fichier.txt. Ça créera l'arborescence automatiquement.Est-ce qu'on peut créer des dossiers via l'interface web en même temps qu'un fichier ?
C'est la base, Git a besoin de savoir qui signe les commits. Balance ça dans ton terminal :
J'ai suivi la partie CLI, tout fonctionne bien jusqu'au
git add. Mais après,git commitme demande de configurer mon identité. Pourquoi ?T'as probablement pas configuré tes clés SSH ou ton remote HTTPS. Vérifie avec
git remote -vque tu pointes bien sur la bonne URL.Tuto utile pour les débutants. Par contre, dès que je fais mon
git push, j'ai une erreur de permission. C'est lié à quoi ?