2012-03-16 21 views
28

Esiste un limite di dimensione per il messaggio di commit Git? Ho cercato attraverso il web ma non riesco a trovare alcuna menzione pertinente su questo tranne this one.Dimensione massima messaggio di commit

Tuttavia, questo non risponde alla mia domanda.

+0

perché vuoi conoscere la dimensione? qualche retroscena o ragione specifica? – fajran

+1

Se non ci sono limiti, è possibile utilizzare l'API di Github come registro persistente solo per l'append, con le operazioni salvate nei messaggi di commit come voci di registro immutabili. Quindi codifica il resto dell'app come un insieme di trasformazioni di dati: blog.confluent.io/2015/03/04/turning-the-database-inside-out-with-apache-samza/ – hsribei

risposta

32

Empiricamente, penso che la risposta sia no. Questo ha funzionato (che è un ~ 100MB messaggio di commit):

yes | head -c 100000000 | git commit -F - > /dev/null 

Comando parti spiegazione:

  • yes ripete "y \n" per sempre
  • head -c 100000000 considera solo il primo 100.000.000 byte (~ 100MB)
  • git commit -F - si impegna con il messaggio di commit inoltrato (questo non funzionerà se non sono state apportate modifiche al commit)
  • > /dev/null nasconde l'output dal comando, che include Git che ripete il messaggio di commit molto lungo
+0

Usa 'git commit - allow-empty -F -' per fare un commit senza alcuna modifica in scena. – Sukima

Problemi correlati