Question Comment supprimer un répertoire du dépôt git?


J'ai 2 répertoires sur mon dépôt GitHub. Je voudrais en supprimer un. Comment pourrais-je faire cela sans supprimer et recréer le dépôt entier?


907
2018-06-10 23:54


origine


Réponses:


Supprimer le répertoire de git et local

Vous pouvez commander 'master' avec les deux répertoires;

git rm -r one-of-the-directories
git commit -m "Remove duplicated directory"
git push origin <your-git-branch> (typically 'master', but not always)

Supprimer le répertoire de git mais pas local

Comme mentionné dans les commentaires, ce que vous voulez habituellement faire est de supprimer ce répertoire de git mais pas de le supprimer entièrement du système de fichiers (local)

Dans ce cas, utilisez:

git rm -r --cached myFolder

1771
2018-06-11 00:37



Pour supprimer le dossier / répertoire uniquement du dépôt git et non du local essayez 3 commandes simples.


Étapes pour supprimer le répertoire

git rm -r --cached FolderName
git commit -m "Removed folder from repository"
git push origin master

Étapes pour ignorer ce dossier dans les prochains commits

Pour ignorer ce dossier à partir des validations suivantes, créez un fichier en racine nommé .gitignore   et mettez le nom de ce dossier dedans. Vous pouvez en mettre autant que vous voulez

.gitignore le fichier ressemblera à ceci

/FolderName

remove directory


209
2017-12-03 12:34



Si, pour une raison quelconque, ce que karmakaze dit ne fonctionne pas, vous pouvez essayer de supprimer le répertoire que vous voulez supprimer (via votre navigateur de système de fichiers), en émettant la commande
git add -A 
et alors
git commit -m 'deleting directory' 
et alors
git push origin master.


63
2018-06-11 02:14



Vous pouvez essayer ceci: git rm -rf <directory_name>

Cela forcera à supprimer le répertoire.


19
2017-10-23 10:21



Si vous supprimez les fichiers dans le répertoire (avec git rm comme l'expliquent les autres réponses), alors le répertoire n'existe plus en ce qui concerne git. Vous ne pouvez pas valider un répertoire vide, vous ne pouvez pas en supprimer un.

Ceci est différent de subversion où vous devez explicitement svn rm emptyfolder/, et est incidemment pourquoi le man page pour git se décrit comme "le stupide tracker de contenu"

Une réponse sur "Comment ajouter un répertoire vide à un dépôt git" des liens vers FAQ sur ce sujet:

Actuellement la conception de l'index git   (zone de transit) autorise uniquement les fichiers à   être répertorié, et personne de suffisamment compétent   faire le changement pour permettre à vide   répertoires a pris soin de suffisamment à propos de   cette situation pour y remédier.

Les répertoires sont ajoutés automatiquement   lors de l'ajout de fichiers à l'intérieur d'eux. Cette   est, les répertoires ne doivent jamais être ajoutés   dans le référentiel et ne sont pas suivis   par eux-même.

Tu peux dire "git add <dir>" et cela   va ajouter des fichiers là-bas.

Si vous avez vraiment besoin d'un répertoire pour   exister dans les caisses, vous devriez créer un   déposer dedans. .gitignore fonctionne bien pour   Cet objectif; vous pouvez le laisser vide,   ou remplissez les noms des fichiers que vous   s'attendre à apparaître dans le répertoire.


15
2017-08-06 09:01



Allez dans votre répertoire git puis tapez la commande suivante: rm -rf <Nom du répertoire>

Après avoir supprimé le répertoire, validez les modifications en: git commit -m "Votre message de validation"

Ensuite, appuyez simplement sur les changements sur le répertoire GIT à distance: git push origine <Nom de la filiale>


4
2017-07-13 11:53



J'utilise habituellement git add --all supprimer des fichiers / dossiers de référentiels distants

rm -r folder_name
git add --all
git commit -m "some comment"
git push origin master

master peut être remplacé par n'importe quelle autre branche du référentiel.


4
2017-09-05 15:41



Vous pouvez supprimer le dossier localement, puis appuyer sur, comme suit:

git rm -r folder_name
git commit -m "your commit"
git push origin master

3
2018-02-26 18:59