Domanda

Ho migrato un paio di progetti da Subversion a Git.Funziona davvero bene, ma quando clono il mio repository, è molto lungo perché ho tutta la cronologia di molti file .jar inclusi nel trasferimento.

Esiste un modo per mantenere solo l'ultima versione di un determinato tipo di file nel mio repository principale.Voglio principalmente eliminare la vecchia versione sul file binario.

È stato utile?

Soluzione

Puoi rimuovere le vecchie versioni con "git rebase" -i o "git filter-branch"

http://schacon.github.com/git/git-filter-branch.html

http://schacon.github.com/git/git-rebase.html

Altri documenti e tutorial:http://git-scm.com/documentation

Da ora in poi non è supportato mantenere solo la versione corrente.La tua scommessa migliore è invece mantenere nel controllo della revisione un piccolo script che scarica (o crea o genera altrimenti) il file .jar di grandi dimensioni.

Poiché ciò modifica la cronologia, renderà non validi tutti i cloni o i pull precedenti da questo repository.

Altri suggerimenti

In breve, ciò comporterebbe la riscrittura dell'intero albero dei commit git per escludere i file.Hai provato a utilizzare git gc E git pack fare in modo che Git comprima il tuo repository?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top