Supprimer des fichiers d'un référentiel dans Git

Azhar Bashir Khan 25 décembre 2021
Supprimer des fichiers d'un référentiel dans Git

Ce tutoriel montrera comment supprimer des fichiers d’un référentiel Git.

Git permet un environnement de développement collaboratif. Ainsi, de nombreux fichiers sont validés dans un référentiel Git par une équipe de développeurs.

Souvent, nous rencontrons des fichiers qui ne sont plus nécessaires ou qui sont redondants. Dans de tels cas, nous jugerions approprié de supprimer ces fichiers ou dossiers déjà enregistrés dans le référentiel.

Nous allons maintenant illustrer cela avec un exemple.

Utilisation de git rm pour supprimer des fichiers et des dossiers dans le référentiel Git

Supposons que nous ayons un dossier nommé folder1 dans le référentiel Git. Aussi, considérez que ce dossier a deux fichiers, file1 et file2.

$ ls folder1/
file1  file2

Pour supprimer un fichier dans le référentiel Git, nous devons procéder comme suit.

$ git rm <filename>

$ git commit -m "commit message"

$ git push origin branch_name

La première commande supprime un fichier du référentiel Git et du système de fichiers. Les commandes suivantes sont utilisées pour commiter les modifications et pousser la modification (c’est-à-dire la suppression du fichier) dans le référentiel distant.

Ainsi, pour supprimer file1, nous procéderons comme suit dans notre exemple.

$ cd folder1

$  git rm file1
rm 'folder1/file1'

Nous avons déménagé dans folder1 et supprimé file1 du référentiel et du système de fichiers.

Nous pouvons vérifier l’état de la suppression comme suit.

$ git status
On branch main
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	deleted:    file1

Maintenant, nous allons valider cette suppression comme suit.

$ git commit -m "deleted file"
[main 27ec53b] deleted file
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file1
 
$ git push origin main

Parfois, nous pouvons souhaiter supprimer le fichier uniquement du référentiel et non du système de fichiers. Nous pouvons vouloir utiliser ce fichier à d’autres fins.

Pour supprimer uniquement les fichiers du référentiel et non du système de fichiers, nous devons procéder comme suit.

$ git rm --cached file2

$ git commit -m "Removed file2 from repository only"

$ git push origin main

Lorsque nous exécutons la commande git rm avec l’option --cached, les fichiers sont supprimés du référentiel mais pas de l’arbre de travail (c’est-à-dire) du système de fichiers.

Parfois, nous devrons peut-être supprimer l’intégralité du dossier.

Pour ce faire, nous devons ajouter l’option -r à la commande git rm comme suit.

$ git rm -r folder1
rm 'folder1/file2'

$ git commit -m "removed folder1"
[main dabfe02] removed folder1
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file2
 
$ git push origin main

Ainsi, dans notre exemple, nous avons maintenant supprimé le dossier, à savoir. folder1 avec son contenu.

Pour plus d’informations sur git rm, explorez le site suivant - git rm.

Article connexe - Git Repository