Comment savoir si le dernier engagement à maîtriser a été poussé vers la télécommande?
J'ai fusionné une branche de maître, et maintenant je peux voir que dans mon git log
Peu de temps a passé et maintenant je veux savoir si j'ai déjà repoussé maître (avec qui commit) de la télécommande. Comment puis-je savoir s'il a été poussé?
Je pense, un peu de solution de contournement comme recloning le référentiel d'ailleurs, ou de réinitialiser et de vérifier puis de les re-fusion mais j'ai l'impression qu'il y a probablement un peu plus simple de répondre.
pour info c'est différent de Comment puis-je savoir dans git, si une branche a déjà été fusionnés en maître? que je sais qu'il a été fusionné, il suffit de ne pas savoir à propos de la télécommande pousser.
source d'informationauteur Michael Durrant
Vous devez vous connecter pour publier un commentaire.
Ne
Si la sortie est
Ensuite, vous avez poussé le commit courant.
Si la sortie au lieu commence avec
Alors vous avez une validation qui n'a pas encore été poussé. Vous voyez ce parce que la branche distante,
origin/master
points à le commettre ce dernier a été poussé à l'origine. Cependant, votre branche estahead of 'origin/master'
ce qui signifie que vous avez une validation qui a été créé après la dernière poussé à commettre.Si le commit qui vous intéresse n'est pas la dernière, alors vous pouvez faire
à savoir si le commit en question est avant ou après la validation pointé par
origin/master
.Si la validation est après (plus haut dans le journal qu')
origin/master
, il n'a pas été poussé.Si vous avez fait plusieurs engage et ne savez pas lequel d'entre eux ont été poussés à distance, essayez ceci:
Exemple:
Ce serait liste de tous les commits dans votre succursale locale qui n'ont pas été poussé à la distance de la branche mentionnée.
vous pouvez utiliser
git log --graph --all --decorate
il montrera où chaque ref est situé (CHEF, le maître, origin/master etc.)Je vous suggère d'exécuter ceci:
Cela ira chercher les données les plus récentes de toutes les télécommandes.
Ensuite, vous exécutez:
Cela permettra de montrer les branches qui vous êtes en avance ou en retard sur.
J'ai posté ce parce qu'aucune des autres réponses mention récupérer les données à distance, cette étape est cruciale.
Une solution pour le faire par programmation:
Vous pouvez également vouloir vérifier si votre répertoire local est propre, par exemple, il n'y a pas changé non validées fichiers:
Si vous voulez que votre script de sortie si une des règles n'ont pas d'attente, vous pouvez utiliser un code comme:
De l'essayer.
git branch -r --contains <sha1>
Pour une livraison dans mon référentiel, je peux voir qu'il existe sur la distance de développer direction de la