190 votes

Comment vérifier si une branche distante existe sur un référentiel distant donné ?

Je dois faire une fusion de sous-arborescence pour une branche spécifique, si elle existe sur un référentiel distant donné. Le problème est que le référentiel distant n'est pas extrait localement, je ne peux donc pas utiliser git branch -r . Tout ce que j'ai est une adresse distante, quelque chose comme ceci https://github.com/project-name/project-name.git . Existe-t-il un moyen de répertorier les succursales distantes uniquement par une adresse distante ? Je n'ai rien trouvé d'utile :(

56voto

Dogbert Points 44003
git ls-remote --heads https://github.com/rails/rails.git
5b3f7563ae1b4a7160fda7fe34240d40c5777dcd    refs/heads/1-2-stable
81d828a14c82b882e31612431a56f830bdc1076f    refs/heads/2-0-stable
b5d759fd2848146f7ee7a4c1b1a4be39e2f1a2bc    refs/heads/2-1-stable
c6cb5a5ab00ac9e857e5b2757d2bce6a5ad14b32    refs/heads/2-2-stable
e0774e47302a907319ed974ccf59b8b54d32bbde    refs/heads/2-3-stable
13ad87971cc16ebc5c286b484821e2cb0fc3e3b1    refs/heads/3-0-stable
3df6c73f9edb3a99f0d51d827ef13a439f31743a    refs/heads/3-1-stable
f4db3d72ea564c77d5a689b850751ce510500585    refs/heads/compressor
c5a809e29e9213102351def7e791c3a8a67d7371    refs/heads/deps_refactor
821e15e5f2d9ef2aa43918a16cbd00f40c221e95    refs/heads/encoding
8f57bf207ff4f28fa8da4544ebc573007b65439d    refs/heads/master
c796d695909c8632b4074b7af69a1ef46c68289a    refs/heads/sass-cleanup
afd7140b66e7cb32e1be58d9e44489e6bcbde0dc    refs/heads/serializers

37voto

Ajo Paul Points 370

Vous pouvez également utiliser ceci :

 git show-branch remotes/origin/<<remote-branch-name>>

renvoie le dernier commit et la valeur de $? est 0 sinon renvoie "fatal: bad sha1 reference remotes/origin/<>" et la valeur de $? est 128

22voto

ravitadi Points 683

Une autre façon que vous pouvez utiliser dans le dossier actuel s'il s'agit d'un dépôt git à exécuter

 git branch -a | egrep 'remotes/origin/${YOUR_BRANCH_NAME}$'

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X