Vorrei ottenere un elenco di file da un repository git che sono stati modificati o creati in un intervallo di commit. È possibile? Ho dato uno sguardo a log
ma non sembra raggiungere questo obiettivo.Come posso ottenere un elenco univoco di file modificati in un repository in un intervallo di commit in Git?
risposta
git diff --name-only ${range}
ti darà esattamente ciò che desideri: solo i nomi dei file modificati in questo momento.
In realtà, ti dà quasi quello che hai chiesto: questo includerebbe i file che sono stati completamente cancellati, non solo i file modificati. Mancherebbe anche i file che sono stati creati, quindi rimossi, all'interno dell'intervallo.
Per ottenere l'immagine completa si vorrebbe probabilmente percorrere l'intervallo e quindi uniq i risultati; utilizzare git log
per ottenere l'intervallo di commit, quindi differire ciascuno contro il genitore.
git diff --stat SHAstart..SHAend
vi darà un elenco di file modificato tra l'SHAIDs SHAstart e SHAend
git diff --name-only --diff-filter=AM <REV1>..<REV2>
Questo vi darà un elenco di file (--name-only
) modificato o aggiunto (--diff-filter=AM
) in tutti i commit raggiungibile dopo e prima (<REV1>..<REV2>
) dove ed è una revisione in git.
Per ulteriori informazioni su come specificare le revisioni e le gamme di vedere questa pagina: http://schacon.github.com/git/git-rev-parse.html
Per ulteriori informazioni sulle opzioni di diff e soprattutto le opzioni --diff-filter
vedere: http://linux.die.net/man/1/git-diff
- 1. Come posso ottenere un elenco di file modificati in svn?
- 2. Numero di commit in un repository git
- 3. git - elenco di tutti i file modificati ma non cancellati in un commit
- 4. Git recuperare un elenco di tutti i file modificati in un ramo
- 5. Come posso annullare l'ultimo commit in un repository git bare?
- 6. Come ottenere un elenco di tutti i commit SVN in un repository e chi ha fatto cosa a quali file?
- 7. Come ottenere una copia di una versione precedente di un file in un repository git?
- 8. Come eseguire il commit di un repository git all'interno di un altro repository git
- 9. Git pre-commit hook: file modificati/aggiunti
- 10. Elenco di telecomandi per un repository git?
- 11. Come contare il numero di commit per file percorso per autore in un repository Git?
- 12. Come vedo l'elenco dei file modificati per un singolo commit, in Git?
- 13. Elenca i nomi di file modificati in un git stash
- 14. Clonazione di un repository Git in un nuovo repository - senza cronologia commit
- 15. Nascondere una stringa in un file prima di commit git
- 16. Come unire un commit specifico in Git
- 17. Come trovare gli ultimi commit in un repository git?
- 18. modifica un file in tutti i commit in git
- 19. Come posso eseguire il backport di un commit in git?
- 20. Come posso ottenere un intervallo di celle in PHPExcel?
- 21. Archiviazione efficiente di file binari in un repository git
- 22. Come ottenere l'ultima data di commit per un gruppo di file in Git?
- 23. come trovo un elenco di file impegnati in un ramo?
- 24. rimuovere un referenziata commit dalla repository git
- 25. Come si inserisce un file fittizio in un repository git?
- 26. Invio di sottostrutture in un repository git
- 27. Modifica di un commit Git su un repository condiviso
- 28. Come scaricare un commit Git specifico da un repository?
- 29. Come ottenere un conteggio di tutti i file in un repository git?
- 30. Git esclude un commit in un ramo
Anche se diff non accetta gamme ('commit..commit ') la sintassi più naturale è di due argomenti,' git diff [opts] commit1 commit2', che rende chiaro che ti mostra la differenza tra i due, non facendo nulla con i commit tra. – Cascabel