En plus de modifier l’emplacement d’un fichier, vous pouvez mettre à jour le contenu de votre fichier ou lui donner un nouveau nom dans le même commit.
Déplacement d’un fichier vers un nouvel emplacement sur GitHub
Conseils :
- Si vous essayez de déplacer un fichier dans un dépôt auquel vous n’avez pas accès, nous dupliquons le projet dans votre compte personnel et vous aidons à envoyer une demande de tirage dans le dépôt d’origine après avoir commité votre changement.
- Certains fichiers, comme les images, doivent être déplacés à partir de la ligne de commande. Pour plus d’informations, consultez « Déplacement d'un fichier vers un nouvel emplacement ».
- Si un référentiel possède des branches protégées, vous ne pouvez pas modifier ou charger des fichiers dans la branche protégée à l’aide de GitHub. Vous pouvez utiliser GitHub Desktop pour déplacer vos modifications vers une nouvelle branche et les valider. Pour plus d’informations, consultez « À propos des branches protégées » et « Commit et revue des changements apportés à votre projet dans GitHub Desktop ».
- Dans votre dépôt, accédez au fichier que vous souhaitez déplacer.
- En haut à droite de la vue de fichier, cliquez sur pour ouvrir l’éditeur de fichier.
Remarque : au lieu de modifier et de valider le fichier en utilisant l’éditeur de fichier par défaut, vous pouvez aussi utiliser l’éditeur de code github.dev en sélectionnant le menu déroulant et en cliquant sur github.dev. Vous pouvez également cloner le référentiel et modifier le fichier localement via GitHub Desktop en cliquant sur GitHub Desktop .
-
Cliquez sur Valider les modifications...
-
Dans le champ de message de validation, tapez un message de validation court et descriptif qui indique la modification que vous avez apportée au fichier. Vous pouvez attribuer la validation à plusieurs auteurs dans le message de validation. Pour plus d’informations, consultez « Création d’une validation avec plusieurs auteurs ».
-
Sous les champs de message de commit, choisissez si vous souhaitez ajouter votre commit à la branche actuelle ou à une nouvelle branche. Si votre branche actuelle est la branche par défaut, vous devez choisir de créer une branche pour votre validation, puis de créer une demande de tirage (pull request). Pour plus d’informations, consultez « Création d’une demande de tirage ».
-
Cliquez sur Valider les modifications ou Proposer des modifications.
Déplacement d’un fichier vers un nouvel emplacement en utilisant la ligne de commande
Vous pouvez utiliser la ligne de commande pour déplacer des fichiers dans un dépôt en supprimant le fichier de l’ancien emplacement, puis en l’ajoutant au nouvel emplacement.
De nombreux fichiers peuvent être déplacés directement sur GitHub. Toutefois, le déplacement de certains fichiers, comme des images, nécessite l’utilisation de la ligne de commande.
Cette procédure suppose que vous avez déjà :
- Avoir créé un référentiel sur GitHub, ou avoir un référentiel existant appartenant à une autre personne auquel vous souhaitez contribuer
- Cloné le référentiel localement sur votre ordinateur
-
Sur votre ordinateur, déplacez le fichier vers un nouvel emplacement dans le répertoire créé localement sur votre ordinateur lorsque vous avez cloné le dépôt.
-
Ouvrez TerminalTerminalGit Bash.
-
Utilisez
git status
pour vérifier l’ancien emplacement du fichier et son nouvel emplacement.$ git status > # On branch YOUR-BRANCH > # Changes not staged for commit: > # (use "git add/rm <file>..." to update what will be committed) > # (use "git checkout -- <file>..." to discard changes in working directory) > # > # deleted: /OLD-FOLDER/IMAGE.PNG > # > # Untracked files: > # (use "git add <file>..." to include in what will be committed) > # > # /NEW-FOLDER/IMAGE.PNG > # > # no changes added to commit (use "git add" and/or "git commit -a")
-
Indexez le fichier pour commit dans votre dépôt local. Cela supprime, ou
git rm
, le fichier de l’ancien emplacement et ajoute, ougit add
, le fichier au nouvel emplacement.$ git add . # Adds the file to your local repository and stages it for commit. # Pour désindexer un fichier, utilisez « git reset HEAD VOTRE-FICHIER ».
-
Utilisez
git status
pour vérifier les modifications intermédiaires pour le commit.$ git status > # On branch YOUR-BRANCH > # Changes to be committed: > # (use "git reset HEAD <file>..." to unstage) > # > # renamed: /old-folder/image.png -> /new-folder/image.png # Displays the changes staged for commit
-
Validez le fichier dont vous avez placé une copie intermédiaire dans votre dépôt local.
$ git commit -m "Move file to new directory" # Commits the tracked changes and prepares them to be pushed to a remote repository. # Pour supprimer ce commit et modifier le fichier, utilisez « git reset --soft HEAD~1 », puis commitez et rajoutez le fichier.
-
Poussez les modifications de votre référentiel local vers GitHub.com.
$ git push origin YOUR_BRANCH # Pushes the changes in your local repository up to the remote repository you specified as the origin