Git: Comment vérifier si un repo local est à jour?
je voudrais savoir si mon repo local est à jour (et si pas, idéalement, je voudrais voir les changements).
Comment pourrais-je vérifier cela sans faire git fetch
ou git pull
?
9 réponses
Essayer git fetch --dry-run
Le manuel ( git help fetch
) dit:
--dry-run
Show what would be done, without making any changes.
vous pouvez utiliser git status -uno
pour vérifier si votre section locale est à jour avec l'origine.
pas vraiment - mais je ne vois pas comment git fetch
pourrait faire mal car il ne changera aucune de vos branches locales.
git remote show origin
résultat:
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (local out of date) <-------
c'est impossible. Comment Pouvez-vous savoir si le dépôt est "à jour" sans aller au dépôt distant pour voir ce que "à jour" signifie?
vous devez lancer git fetch
avant de pouvoir comparer votre dépôt local avec les fichiers de votre serveur distant.
cette commande ne met à jour que vos branches de suivi à distance et n'affectera pas votre worktree jusqu'à ce que vous appeliez git merge
ou git pull
.
pour voir la différence entre votre branche locale et votre branche de suivi à distance une fois que vous avez récupéré, vous pouvez utiliser git diff ou git cherry comme expliqué ici.
une autre alternative est de voir le statut de la branche distante en utilisant
git show-branch remote/branch
pour l'utiliser comme une comparaison, on pouvait voir git show-branch *branch
pour voir la direction dans toutes les télécommandes ainsi que votre dépôt! en savoir plus https://stackoverflow.com/a/3278427/2711378
vous devrez émettre deux commandes:
- git fetch origin
- git status
première utilisation git remote update
, pour mettre à jour vos références à distance. Ensuite, vous pouvez faire plusieurs choses, telles que:
-
git status -uno
vous dira si la branche que vous suivez est devant, derrière ou a divergé. Si cela ne dit rien, le local et la télécommande est la même. -
git show-branch *master
branches dont le nom se termine par 'master' (par exemple master et origine/master).
si vous utilisez-v avec git remote update (git remote-V update), vous pouvez voir quelles branches ont été mises à jour, donc vous n'avez pas vraiment besoin d'autres commandes.