Domanda
Esiste un modo per rimuovere completamente una directory e la sua cronologia da GitHub?
Soluzione
Se stai chiedendo di eliminare un progetto da GitHub, apri il tuo progetto, fai clic su " Admin " scheda (o vai direttamente a https://github.com/username/project_name/edit ) e nella parte inferiore della pagina, fai clic su " Elimina questo repository " ;. Ti chiederà di confermare, e poi non c'è più.
Se vuoi solo cancellare una parte del tuo repository, devi farlo nel tuo repository git e inviarlo a GitHub.
GitHub ha scritto un howto su questo nelle loro FAQ. Non ho provato questo da solo, quindi non posso guidarti oltre, ma probabilmente puoi gestirlo tu stesso qui.
In entrambi i casi, questo, naturalmente, non elimina alcun pull di terze parti - se qualcuno ha estratto il repository prima che tu lo abbia eliminato, è fuori, senza che tu sia in grado di fare molto al riguardo (oltre a provare " abbastanza per favore " -technique).
Altri suggerimenti
Per eliminare selettivamente un file o una directory (e tutta la sua cronologia associata), puoi usare git filter-branch
.
Questo è molto utile quando si desidera eliminare completamente i file archiviati nel repository per errore.
La sintassi è semplice:
git filter-branch --tree-filter 'rm -f filename' HEAD
Ulteriori informazioni sulla pagina man .
Vai alla scheda modifica; c'è un link per l'eliminazione nella parte inferiore della pagina.
Questo è il modo più semplice per eliminare una directory dal repository GitHub ma non dal sistema locale:
git rm -r --cached FolderName
git commit -m "Removed folder from repository"
git push origin master