extrage toate fișierele modificate într-o comanda git

Trebuie să fac un patch pentru cineva (nu utilizează git) - un zip al fișierelor modificat printr-un comitet.

M-am gândit ca ceva

git archive --format=zip commitguid > myfiles.zip

dar aceasta extrage totul, nu doar fișierele modificate. Există vreo modalitate de a face asta? Și pentru a face mai complicat - există vreo modalitate de a face acest lucru cu mai multe comitete (da, ar trebui să am ramificat înainte de a face schimbările, dar asta este retrospectivă)

EDITAȚI | ×

Bazat pe soluția @Amber de mai jos, pot face acest lucru în 2 pași în Git Bash pentru ferestre cu 7Zip instalate în c: \ data \ progs.

git diff --name-only a-sha b-sha > tmp.txt
/C/data/progs/7za.exe a myzip.zip @tmp.txt
0

2 răspunsuri

Consultați, de asemenea, git help-patch . Ea produce un patch diff de toate modificările într-un comitet împreună cu autorul comitetului, data, mesajul și unele statistici diff frumos. Ai putea să zip și să trimiți asta.

0
adăugat
doar de utilizare dacă pot folosi git cred că ??? Credeam că a generat un singur format de fișier
adăugat autor Andiih, sursa
din păcate nu standard la ferestre :-( Am etichetat acum ca atare!
adăugat autor Andiih, sursa
@Andiih, nu, patch-urile produse pot fi aplicate de utilitarul standard patch (POSIX) și nu necesită git .
adăugat autor ulidtko, sursa
git diff --name-only   | zip dest.zip [email protected]

completarea SHAs/refs-urilor corespunzătoare. De exemplu, pentru a crea un zip al fișierelor care s-au schimbat între ramurile master și

git diff --name-only master feature | zip dest.zip [email protected]
0
adăugat
Mulțumesc Amber. Orice idei cum să obțineți acest lucru pentru a lucra pe ferestre cu doar 7-zip instalat? Încerc (a doua jumătate a comenzii tale) /C/progs/7za.exe a myzip.zip - @ dar obțineți Eroare: Linie de comandă incorectă
adăugat autor Andiih, sursa
Puteți face acest lucru într-un pas cu pavilionul 7-zip -si : pwet.fr/man/linux/commandes/7z și stackoverflow.com/questions/805706/…
adăugat autor ellotheth, sursa