gui - git repository
La sucursal remota no aparece en "git branch-r" (5)
He estado presionando a un repositorio bitbucket remoto y recientemente un colega ha empujado una nueva rama que creó al mismo repositorio.
Estoy tratando de buscar los cambios que cargó.
$ git branch -a
* master
localbranch1
localbranch2
remotes/origin/master
$ git branch -r
origen / maestro
En la interfaz de usuario de bitbucket, puedo ver la rama que ha creado. Cualquier ayuda / consejo / dirección sería muy apreciada. Gracias.
Cualquier otra información que necesites solo pregunta.
EDIT 1
$ git fetch bitbucket
Password for ''https://[email protected]'':
From https://bitbucket.org/user/repo
* branch HEAD -> FETCH_HEAD
Si la rama que creó se llama new_branch_b debería esperar ver:
$ git branch -r
origin/master
origin/new_branch_b
EDIT 2
$ git remote update
Fetching bitbucket
Password for ''https://[email protected]'':
From https://bitbucket.org/user/repo
* branch HEAD -> FETCH_HEAD
$ git branch -r
origin/master
EDIT 3
[remote "bitbucket"]
url = https://[email protected]/user/repo.git
Llamé a bitbucket remoto en lugar de origen (al menos eso es lo que recuerdo, lo configuré hace un tiempo)
EDIT 4
Actualicé la configuración remota bitbucket según la respuesta de Kan.
$ git config -e
[remote "bitbucket"]
url = https://[email protected]/user/repo.git
fetch = +refs/heads/*:refs/remotes/bitbucket/*
Para la mayoría de las personas se llamará origen
[remote "origin"]
url = https://[email protected]/user/repo.git
fetch = +refs/heads/*:refs/remotes/origin/*
Después
$ git remote update
Fetching bitbucket
Password for ''https://[email protected]'':
remote: Counting objects: 48, done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 35 (delta 21), reused 0 (delta 0)
Unpacking objects: 100% (35/35), done.
From https://bitbucket.org/user/repo
* [new branch] branch_name1 -> origin/branch_name1
* [new branch] branch_name2 -> origin/branch_name2
.... y así.
Creo que el git fetch origin
también funcionaría para git remote update
Gracias a todos los que me ayudaron con este problema.
Actualiza tu control remoto si aún no lo has hecho:
$ git remote update
$ git branch -r
Desafortunadamente git branch -a
y git branch -r
NO le muestran todas las sucursales remotas, si no ha ejecutado una "git fetch". git remote show origin
funciona constantemente todo el tiempo. También git show-ref
muestra todas las referencias en el git repo. Sin embargo, funciona igual que el comando git branch
La sección remote
especifica también reglas de búsqueda. Podría agregar algo parecido a esto:
fetch = +refs/heads/*:refs/remotes/origin/*
para buscar todas las ramas desde el control remoto. (o reemplace el origin
por bitbucket
).
Por favor, lea sobre esto aquí: https://git-scm.com/book/en/v2/Git-Internals-The-Refspec
Si se clona con el parámetro --depth
, establece que .git / config no capte todas las ramas, sino que solo las obtenga.
Puede simplemente omitir el parámetro o actualizar el archivo de configuración desde
fetch = +refs/heads/master:refs/remotes/origin/master
a
fetch = +refs/heads/*:refs/remotes/origin/*
Tuve el mismo problema. Parece que la solución más fácil es simplemente quitar el control remoto, volver a agregarlo y recuperarlo.