Quand est-git d'actualisation de la liste des branches distantes?
À l'aide de git branch --all
montre tous les distance et local branches. Quand git actualiser cette liste? Sur pull/push? Et comment l'actualiser à l'aide de git bash
?
Un grand merci!
- Comme une note,
git ls-remote
pourrait être intéressant ici.
Vous devez vous connecter pour publier un commentaire.
Pour afficher tous les locaux et les branches distantes (local) git sait
De mise à jour de la liste locale des branches distantes:
git remote update origin --prune
est ce que je cherchais, mercigit remote update
, et l'on a accepté la réponse, qui utilisegit fetch
, voir icigit fetch
ne pas supprimer mon cache local des branches distantes. Seulement--prune
a réussi à tout nettoyer.git config remote.origin.prune true
git remote prune origin
a le même effet et que vous tapez moins.remote prune
seulement nettoie les branches mortes de la liste, il ne fait pas de nouvelles branches ajouté à distancegit remote update origin --prune
à être exécuté manuellement? Il devrait être assez intelligents pour le faire par lui-même si vous avez, par exemple, l'extraction de maître à partir du serveur et il n'y a pas d'autres branches (parce qu'ils ont juste été fusionnées).git remote update upstream --prune
git fetch -p && for branch in
git branch-vv | grep ': fini]' | awk '{print $1}'; do git branch -D $branch; done
Je crois que si vous exécutez
git branch --all
de la fête que la liste de distance et de branches locales vous voyez aura refléter ce que votre Git local "connaît" lors de l'exécution de la commande. Parce que votre Git est toujours à jour en ce qui concerne les branches locales dans votre système, la liste des agences locales seront toujours exactes. Toutefois, pour les bureaux distants, ce ne doit pas être le cas. Votre Git local ne sait que sur les branches distantes de laquelle il a vu dans le dernier fetch (ou de traction). Donc il est possible que vous pourriez exécutergit branch --all
et pas voir une nouvelle branche à distance qui est apparu après la dernière fois que vous avez récupéré ou tiré.Pour vous assurer que votre local et à distance de la liste des branches d'être à jour que vous pouvez faire un
git fetch
avant de coursegit branch --all
.Pour de plus amples informations, la "distance" les branches qui apparaissent lorsque vous exécutez
git branch --all
ne sont pas vraiment à distance à tous, ils sont en réalité locale. Par exemple, supposons qu'il y être une branche de la télécommande appeléfeature
qui vous ont tiré au moins une fois dans votre local Git. Vous verrezorigin/feature
répertorié comme une branche lorsque vous exécutezgit branch --all
. Mais cette branche est en fait un local branche Git. Lorsque vous negit fetch origin
ce suivi branche est mis à jour avec les nouvelles modifications à partir de la télécommande. C'est pourquoi votre état local peut obtenir rassis, car il peut y avoir de nouvelles branches distantes, ou le suivi de votre colis, les branches peuvent devenir obsolètes.git fetch
fait.git fetch
ne fonctionne pas pour moi, besoin d'ajouter des--prune
. Btw, je ne suis pas downvoter 😉L'OP n'a pas demandé pour le nettoyage de toutes les télécommandes, plutôt pour toutes les branches de la distance par défaut.
Donc
git fetch --prune
est ce qui doit être utilisé.Réglage
git config remote.origin.prune true
fait--prune
automatique, dans ce cas il suffit degit fetch
également tailler rassis branches distantes à partir d'une copie locale. Voir aussi Automatique prune avec git fetch ou tirer.Noter que ce n'est pas le propre des branches locales qui ne sont plus suivi une branche distante. Voir https://stackoverflow.com/a/54484443/869951 pour que.
Utilisation
git fetch
récupérer toutes les dernières créé branches.git fetch
n'a rien changé pour moi avec git 2.17.1 picloc. La version et les options avez-vous eu recours?--prune
ougit config remote.NAME.prune true
pour cela résoudre la question de l'OPSi vous utilisez Eclipse et que vous souhaitez voir de nouvelles branches de l'amont;
Dans Git perspective clic droit sur le dépôt git et puis choisissez "Récupérer à partir de l'Amont". Cet extrait de nouvelles branches distantes.
Si vous utilisez Eclipse,
Ils devraient tous être là. Droit et cliquez sur "commander".