restaurar repositorio recuperar que prune limpiar hace contraseña borrado git

que - recuperar repositorio borrado github



Git dice que la referencia remota no existe cuando borro la rama remota (10)

  1. obtener la lista de sucursales remotas

git fetch # synchronize with the server git branch --remote # list remote branches

  1. Debería obtener una lista de las ramas remotas:

origin/HEAD -> origin/master origin/develop origin/master origin/deleteme

  1. ahora podemos eliminar la rama:

git push origin --delete deleteme

Corrí git branch -a

* master remotes/origin/test remotes/origin/master

Quiero borrar mi rama remota

He intentado

git push origin --delete remotes/origin/test

tengo

error: no se puede eliminar ''remotes / origin / test'': la referencia remota no existe

¿Cómo es que no existe?

Hice una git branch -a , y la vi listada.

Yo me perdí algo ?


Dado que la rama remota es control remoto / origen / prueba, puede usar dos formas:

git branch --remotes | grep -v ''origin/master'' | sed "s/origin////" | xargs -i{foo} git push origin --delete {foo}

y

git push origin --delete test


El comando git branch -a muestra ramas remotas que existen en su repositorio local . Esto puede sonar un poco confuso, pero para entenderlo, debe comprender que hay una diferencia entre una rama remota y una rama que existe en un repositorio remoto. Las ramas remotas son ramas locales que se asignan a ramas del repositorio remoto. Entonces, el conjunto de ramas remotas representa el estado del repositorio remoto.

La forma habitual de actualizar la lista de ramas remotas es usar git fetch . Esto obtiene automáticamente una lista actualizada de ramas desde el control remoto y configura ramas remotas en el repositorio local, también recuperando cualquier objeto de confirmación que pueda faltar.

Sin embargo, de forma predeterminada, git fetch no elimina las ramas remotas que ya no tienen una rama equivalente en el control remoto. Para hacer eso, necesita explícitamente podar la lista de ramas remotas:

git fetch --prune

Esto eliminará automáticamente las ramas remotas que ya no existen en el control remoto. Después, git branch -r le mostrará una lista actualizada de ramas que realmente existen en el control remoto: y aquellas que puede eliminar usando git push .

Dicho esto, para usar git push --delete , debe especificar el nombre de la rama en el repositorio remoto; No es el nombre de su sucursal remota. Entonces, para eliminar la test bifurcación (representada por su origin/test bifurcación remota), usaría git push origin --delete test .


El significado de remotes/origin/test es que tiene una rama llamada test en el origin servidor remoto. Entonces el comando sería

git push origin --delete test


Hay un acceso directo para eliminar la rama en el origen:

git push origin :<branch_name>

Lo que es lo mismo que hacer git push origin --delete <branch_name>


Para mí esto funcionó $ ▶ git branch -D -r origin / mybranch

Detalles

$ ▶ git branch -a | grep mandos a distancia mybranch / origen / mybranch

$ ▶ git branch -r | grep origen mybranch / mybranch

$ ▶ git branch desarrollo * característica / pre-implementación

$ ▶ git push origin --Eliminar error de mybranch: no se puede eliminar ''mybranch'': error de referencia remota no existe: error al insertar algunas referencias a ''[email protected]: config / myrepo.git''

$ ▶ git branch -D -r origin / mybranch Se eliminó el origen de sucursal remota / mybranch (era 62c7421).

$ ▶ git branch -a | grep mybranch

$ ▶ git branch -r | grep mybranch


Una guía práctica para eliminar ramas del origen que no sean ''maestro'':

git branch -D -r origin/test

¡Asegúrese de comprender las implicaciones de ejecutar esto antes de hacerlo!


git branch -a enumerará las ramas en su local y no las ramas en su control remoto.

Y el error de error: unable to delete ''remotes/origin/test'': remote ref does not exist significa que no tiene una rama con ese nombre en su control remoto, pero la rama existe en su local.


git push origin --delete yourBranch


git push origin --delete origin/test

debería funcionar también