79 votes

Ne git retour retour les codes d'erreur?

Comme la fusion des erreurs, ou rebase erreurs. Faut-il avoir un unique code d'erreur?

53voto

Jefromi Points 127932

En bref, pas. Vous allez voir code de sortie 1 pour les erreurs, et 0 en cas de réussite.

À partir d'un rapide grepping de la source, il y a quelques prévue de l'127 et 128 pour leurs propres besoins (command not found, les erreurs déjà signalées), et un peu inhabituelle codes dans quelques endroits, mais pour la course de l'usine des erreurs, c'est tout exit(1).

50voto

chrisaycock Points 12900

J'ai mis en place un test à l'échec. C'est ce que j'ai:

$ git merge newbranch
Auto-merging test.txt
CONFLICT (content): Merge conflict in test.txt
Automatic merge failed; fix conflicts and then commit the result.

$ echo $?
1

Git retours 0 quand il fusionne correctement, comme prévu.

12voto

Gus Shortz Points 411

L'exécution git status sur un non-repo git retourne 128, non pas 1, ce qui est utile pour rapidement déterminer si un repo git existe ou pas.

5voto

Darren Cook Points 5743

Erreur 128, avec aucun message d'erreur à partir de git, pourrait être un fourre-tout de "problème inattendu".

J'étais présent sur les opérations nécessaires pour modifier les fichiers sous .git (par exemple,"git checkout -- myfile" pour rétablir un fichier modifié) par un autre utilisateur. (Dans mon cas "chmod -R og+w .git" il fixe; naturellement, de ne pas le faire sauf si vous comprenez les implications de sécurité pour votre cas!)

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