Notre première astuce proposée par un lecteur provient de Dav Glass, et nous parle d’une commande utilisée pour garder ses dépôts en ordre. Vous avez une astuce à partager ? Proposez la !
Des fichiers et des répertoires peuvent se retrouver dans le répertoire courant de vos dépôts après des fusions, l’utilisation de scripts générant des fichiers ou bien déposés la par erreur. Dans tous les cas, vous n’avez pas besoin de les ajouter à .gitignore
, vous devez juste les supprimer.
git clean -n -d <path>
va exécuter une version de test de cette commande et lister les fichiers et répertoires detinés à être supprimés. En l’appliquant sur gitready, on obtient la sortie suivante :
Would remove _posts/2009-01-16-cleaning-up-untracked-files.textile
Ce qui poserait problème si ce fichier était supprimé.
Je n’ai pas encore ajouté cette page à l’état staging, donc le fichier n’est pas répertorié. Si vous voulez simplement que les fichiers soient supprimés et pas les répertoires, enlever l’option -d
. Une fois que vous êtes certain de vouloir supprimer tous ces fichiers, la commande
git clean -d <path>
effectuera réellement la suppression des fichiers.Si vous omettez <path>
, git effectuera cette opération sur l’ensemble du répertoire courant. De plus, vous pouvez ajouter l’option -f
suivant les droits sur les fichiers ou toute autre situation la nécessitant.
La suppression peut se faire avec des options supplémentaires : si vous voulez effectuer une suppression normale et supprimer également les fichiers que git ignore habituellement, l’option -x
est à utiliser. Si vous voulez juste jeter les fichiers ignorés et eux seulement,utiliser l’option -X
.
Si on voulait faire un grand nettoyage :
$ git clean -n -d -x Would remove .DS_Store Would remove _posts/.2009-01-16-cleaning-up-untracked-files.textile.swp Would remove _posts/2009-01-16-cleaning-up-untracked-files.textile Would remove _site/ Would remove images/.DS_Store Would remove images/_site/
Cette commande détruirai les fichiers décrits dans le fichier .gitignore et supprimerai les autres fichiers et répertoires superflus. Dans tous les cas git clean
doit être utilisé avec soin et mieux vaut contrôler ce que vous allez définitivement supprimer.
Comme d’habitude, si vous connaissez d’autres astuces à utiliser avec git clean
, merci de les ajouter à vos commentaires !