Domanda git subtree push e split aggiungendo "-n " per il commit dei messaggi


Ogni volta che divido una sottodirectory in un ramo via git subtree split o (di conseguenza?) quando spingo una sottostruttura a monte, i messaggi di commit nei nuovi commit di ramo / upstream hanno "-n" e una newline anteposta a loro.

È più semplice dimostrare con split:

git init repo
cd repo
mkdir splitme
touch splitme/foo
git add splitme/
git commit -m 'Add foo'
git subtree split -P splitme -b splitme-only

Da questo, ottengo:

$ git log master
commit 6d5164076bd88d1dab8963d91ec013372e58a444
Author: me
Date:   Fri Jul 26 12:22:27 2013 -0500

    Add foo

e

$ git log splitme-only 
commit 6ce8124a0b5e52d4bba198144d2f3f664d7b19e7
Author: me
Date:   Fri Jul 26 12:22:27 2013 -0500

    -n
    Add foo

Come puoi vedere, il ramo "splitme-only" ha "-n" anteposto al messaggio di commit. Questo è particolarmente negativo dato che github collassa tutto tranne la prima linea per impostazione predefinita. Quindi, non puoi facilmente sfogliare questi messaggi di commit su github.

Ho provato a usare --annotate per ottenere forse qualcosa di più leggibile, ma che aggiunge semplicemente qualcosa alla linea "-n".

Il comportamento è identico per subtree push.

C'è un modo per impedire l'aggiunta della linea "-n"? Potrei ribaltare la battuta, ma quando ho giocato con questo ha rotto i sottoalberi. Sto facendo qualcosa di sbagliato?

Usare git 1.8.3.4 su OS X 10.8.4.


11
2017-07-26 17:50


origine


risposte:


Si scopre che si tratta di un bug in git, introdotto in 1.8.3.3.

In particolare, questa fusione fatto sottotree eseguito via sh invece di bash, che si rompe questa linea.

Ecco la segnalazione di bug che ho appena inviato: http://thread.gmane.org/gmane.comp.version-control.git/231213

AGGIORNAMENTO: il bug è fisso in git 1.8.4


15
2017-07-26 21:14