Es meklēju vienkāršu git
komandu, kas nodrošina labi formatētu sarakstu ar visiem failiem, kas bija daļa no nodošanas, norādot hash (SHA1), bez liekas informācijas.
Esmu izmēģinājis:
git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d
Lai gan tajā ir uzskaitīti faili, tajā ir arī nevēlama atšķirīga informācija par katru failu.
Vai ir kāda cita git
komanda, kas sniegtu tikai man vajadzīgo sarakstu, lai es varētu izvairīties no tā analizēšanas no git show
izejas?
Piecienītākais veids (jo tā ir santehnikas komanda; paredzēta programmatiskai lietošanai):
$ git diff-tree --no-commit-id --name-only -r bd61ad98
index.html
javascript/application.js
javascript/ie6.js
Cits veids (mazāk vēlams skriptu gadījumā, jo tā ir porcelāna komanda; paredzēta lietotājam)
$ git show --pretty="" --name-only bd61ad98
index.html
javascript/application.js
javascript/ie6.js
--no-commit-id
tiek atcelts commit ID izvads.--pretty
norāda tukšu formāta virkni, lai izvairītos no "cruft" sākumā.---name-only
parāda tikai to failu nosaukumus, kas tika ietekmēti (Paldies, Hank). Ja vēlaties redzēt, kas noticis ar katru failu (Dizdzēsts, Mmainīts, Apievienots), izmantojiet --name-status
.-r
ir paredzēts, lai veiktu rekursiju uz apakšdrupiem.Kombinējot "git show --stat
" (paldies Ryan) un pāris sed komandas, jums vajadzētu samazināt datus:
git show --stat <SHA1> | sed -n "/ [\w]\*|/p" | sed "s/|.\*$//"
Tas parādīs tikai modificēto failu sarakstu.