Come errori di fusione o errori di rebase. Ha un codice di errore univoco?Il git restituisce specifici codici di errore di restituzione?
risposta
Ho impostato un test per fallire. Questo è quello che ho ottenuto:
$ 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 torna 0
quando si fonde in modo corretto, come previsto.
In breve, no. Vedrai il codice di uscita 1 per gli errori e 0 per il successo.
Da un rapido grepping della sorgente, ci sono alcuni dei previsti 127 e 128 per i loro scopi specifici (comando non trovato, errori già segnalati) e alcuni codici insoliti in alcuni punti, ma per la corsa del errori di laminazione, è tutto exit(1)
.
Sì, ho visto anche 127 e 128. Comunque, grazie. – poymode
Ciò è particolarmente fastidioso per il debug dei ganci di commit. Qual è il punto di avere anche un codice di uscita nei git git se un commit fallito restituirà sempre 1 invece del tuo codice di uscita hook. –
Errore 128, senza alcun messaggio di errore da git, potrebbe essere un catch-all per "problema inaspettato".
Stavo ricevendo questo su operazioni che avevano bisogno di modificare file sotto .git (ad esempio "git checkout -- myfile
" per ripristinare un file modificato) da un utente diverso. (Nel mio caso "chmod -R og+w .git
" risolto, naturalmente, non farlo se non comprendi le implicazioni sulla sicurezza per il tuo caso!)
L'esecuzione di git status
su un repo non-git restituisce 128, non 1, che è utile in determinare rapidamente se esiste un repository git o meno.
- 1. Dati primari JPA per la restituzione di campi specifici
- 2. Codici di errore errore Jsch non coerenti
- 3. Restituzione di codici di stato HTTP in Python CGI
- 4. Modello di risposta per codici di stato specifici utilizzando Swagger
- 5. AJAX restituisce codici di stato insoliti
- 6. MediaRecorder start codici di errore
- 7. Codici errore GCM
- 8. ElasticSearch NEST restituisce campi specifici
- 9. È meglio utilizzare le eccezioni in una classe di "validazione" o codici di stato di restituzione?
- 10. Android: l'acquisto in-app restituisce 3 codici di errore (articolo già di proprietà) sempre
- 11. Errore di restituzione chiamata Webservice 500
- 12. NSURLErrorDomain descrizione codici errore
- 13. Codici di errore HTTP 406 e 415
- 14. Restituisce solo campi specifici dal sottodocumento di array di proiezione
- 15. codici di errore Boost leggibile descrizione
- 16. File specifici del ramo GIT?
- 17. Best practice per la restituzione di un errore da una funzione lua che restituisce più valori
- 18. Metodo di restituzione HashMap
- 19. Restituzione di vero o messaggio di errore in Ruby
- 20. Restituzione di uno stato di errore in Haskell e Yesod
- 21. Come posso restituire codici di stato HTTP specifici da un metodo remoto in loopback?
- 22. Come impostare permessi di tracciamento specifici usando Git?
- 23. Restituzione di HTML con fetch()
- 24. Come impedire il commit successivo su file specifici su git?
- 25. Elenco di tutti i codici di errore OLE
- 26. Codici di stato HTTP di errore Internet Internet Explorer
- 27. t-sql Codici di errore di ritorno vs RaiseError
- 28. come unire file specifici in git
- 29. processo Bash di sostituzione e di uscita codici
- 30. git: salta specifici commit durante l'unione
Problema, i documenti per 'git merge' (a 1.7.4 - http://www.kernel.org/pub/software/scm/git/docs/v1.7.4/git-merge.html) solo menziona lo stato di ritorno in un posto (se usi "--ff-only" e non può fare un commit veloce, esso ritorna diverso da zero - non dice esplicitamente cosa viene restituito se tutto funziona o –
@Matt: i comandi Git sono molto, molto buoni per restituire zero per il successo e non zero (generalmente 1) altrimenti. È sempre possibile concatenare i comandi in modo sicuro con '&&'; in questo modo vengono implementati i test. – Cascabel
Git non è adatto per restituire codici di uscita coerenti e sensibili. Ad esempio, se si esegue commit git senza modifiche, il codice 1 verrà chiuso, ma è un errore * not * – pfalcon