2012-03-18 16 views
22

Soy nuevo en GitHub. Cuando hice clic en un enlace Wiki, se creó una Wiki nueva para mi repositorio. Pero realmente no lo necesito Si intento eliminar su única página, GitHub pregunta: "¿Estás seguro de que deseas eliminar esta página?". Y confirmo eso. Y no pasa nada, la página todavía está allí. No puedo decir que sea demasiado molesto, pero me gustaría saber si hay una forma de eliminar Wiki.Borrar GitHub repo's Wiki

Respuesta

16

Haga clic en el botón Configuración en la página de GitHub de su proyecto y desactive Wikis.

Debería desaparecer.

+0

GitHub es bastante pulido en lo que respecta a la interfaz, por lo que esas cosas no son demasiado complejas. – Blender

+2

Está en Configuración-> Opciones-> Funciones ahora. – Nikolai

+8

En realidad, esto solo hace invisible al Wiki. En realidad, no lo elimina. Si vuelves a la página de administración y haces clic en la casilla de verificación wiki allí, el contenido volverá a estar visible. [via] (http://stackoverflow.com/a/13447204/1485952) – fnkr

7

En primer lugar, descubrir el URL de tu repositorio:

$ cd your-project 
$ git remote -v 
origin [email protected]:belden/foo.git (fetch) 
origin [email protected]:belden/foo.git (push) 

Clon su wiki; su URL es el URL de su proyecto, que termina con 'wiki.git':

$ cd /tmp 
$ git clone [email protected]:belden/foo.wiki.git foo-wiki 
Cloning into 'foo-wiki'... 
remote: Counting objects: 375, done. 
remote: Compressing objects: 100% (159/159), done. 
remote: Total 375 (delta 214), reused 375 (delta 214) 
Receiving objects: 100% (375/375), 78.41 KiB, done. 
Resolving deltas: 100% (214/214), done. 

Ahora simplemente tratarlo como un proyecto normal que desea borrar archivos de:

$ cd foo-wiki 
$ git rm *.md 
$ git commit -am "remove wiki pages" 
$ git push 

y ya está .

+0

Esto mantiene el historial completo, de modo que puede recuperar los contenidos anteriores del Wiki si lo desea (consulte 'git log '). Si quieres borrar el historial también, mira mi variante. ('git' no te permitirá matar el historial sin' git push --force', por lo que si sales ''force' estás en el lado seguro al respecto) – Tino

9

Los bits faltantes están en GitHub como siempre. En combinación con el habitual git -fu puede borrar todos los datos de un acuerdo de recompra GitHub, por ejemplo destruir una wiki ACCOUNT/REPO.wiki.git:

git clone [email protected]:ACCOUNT/REPO.wiki.git 
cd REPO.wiki 
git checkout --orphan empty 
git rm --cached -r . 
git commit --allow-empty -m 'wiki deleted' 
git push origin empty:master --force 

Advertencia! Esta receta permite realmente destruir todos los datos (en cualquier repositorio) en GitHub, a excepción de lo que aún puede almacenarse en caché en algún lugar. Mi prueba muestra que incluso

git clone --mirror [email protected]:ACCOUNT/REPO.wiki.git 

no puede traer de vuelta cualquier rastro de datos antiguos después. Por cierto, aprender a entender lo que arriba hace es un buen ejercicio de aprendizaje git;)

+0

Ten en cuenta que, probablemente, necesites para eliminar todas las demás ramas y etiquetas, excepto 'master'. También tenga en cuenta que puede proteger ramas en GitHub en 'Configuración'. Tal rama protegida se niega a obtener algo empujado con '--force'. Así que asegúrese de desproteger las ramas en cuestión, también. – Tino

Cuestiones relacionadas