Tengo un maestro y una rama de desarrollo en mi repositorio. Quiero eliminar la rama maestra de mi computadora para no comprometerme accidentalmente (sucedió ...).
Aquí hay preguntas sobre cómo eliminar sucursales de forma local y remota, pero no he podido averiguar cómo eliminar solo una sucursal localmente.
Una respuesta dijo usar esto:
git branch -d local_branch_name
Pero lo intenté y la rama todavía aparece en la aplicación GitHub.
Deleted branch master (was e8a8e29).
Respuestas:
Creo (en base a sus comentarios) que entiendo lo que quieres hacer: desea que su copia local del repositorio que no tienen ni la rama local ordinaria
master
, ni la rama remota de seguimientoorigin/master
, a pesar de que el repositorio clonado el github : Tiene una rama localmaster
que no desea eliminar de la versión de github.Puede hacer esto eliminando la rama de seguimiento remoto localmente, pero simplemente volverá cada vez que solicite a su git que sincronice su repositorio local con el repositorio remoto, porque su git le pregunta a su git "qué ramas tiene" y dice "Tengo
master
" para que tu git (re) creeorigin/master
para ti, para que tu repositorio tenga lo que tiene el suyo.Para eliminar su rama de seguimiento remoto localmente utilizando la interfaz de línea de comando:
pero nuevamente, solo volverá a sincronizarse nuevamente. Que es posible derrotar a esto también (mediante
remote.origin.fetch
la manipulación), pero usted es probablemente mejor sólo ser lo suficientemente disciplinado para no crear o modificarmaster
localmente.fuente
Forzar la eliminación de la rama local:
[ NOTA ]:
"-D"
Es forzar la opción de eliminación.fuente
Hasta donde puedo entender el problema original, agregaste commits al maestro local por error y aún no presionaste esos cambios. Ahora desea cancelar sus cambios y esperar eliminar sus cambios locales y crear una nueva rama maestra desde la remota.
Simplemente puede restablecer sus cambios y volver a cargar el maestro desde el servidor remoto:
fuente
La aplicación Github para Windows muestra todas las ramas remotas de un repositorio. Si ha eliminado la rama localmente
$ git branch -d [branch_name]
, la rama remota todavía existe en su repositorio de Github y aparecerá independientemente de la aplicación Windows Github.Si desea eliminar la rama por completo (también de forma remota), use el comando anterior en combinación con
$ git push origin :[name_of_your_new_branch]
. Advertencia: este comando borra todas las ramas existentes y puede causar la pérdida de código. Tenga cuidado, no creo que esto sea lo que está tratando de hacer.Sin embargo, cada vez que elimine los cambios de la rama local, la rama remota seguirá apareciendo en la aplicación. Si no desea seguir haciendo cambios, simplemente ignórelo y no haga clic; de lo contrario, puede clonar el repositorio. Si tiene más preguntas, hágamelo saber.
fuente
necesita cambiar a otra rama e intentar lo mismo.
git branch -d
fuente
Según sus etiquetas, supongo que está usando Github. ¿Por qué no crear algunas reglas de protección de sucursal para su sucursal maestra? De esa manera, incluso si intentas presionar para dominar, lo rechazará.
También recomendaría hacer lo mismo para su rama de desarrollo.
fuente