2016-04-20 3 views
0

Ich versuche, einen benutzerdefinierten Befehl für jede Datei vor einem Push ausgeführt zu ändern. Ich bin auf der Suche über die Pre-Push-Probe:Git Hook Custom Command für jede Datei vor dem Push geändert

https://github.com/git/git/blob/87c86dd14abe8db7d00b0df5661ef8cf147a72a3/templates/hooks--pre-push.sample

aber ich kann nicht herausfinden, wie verpflichtet iterieren. Ich habe git log angeschaut, aber ich kann nicht sagen, wie man Commits seit dem letzten Push unterscheidet.

Wie kann ich über jede Dateiänderung iterieren, bevor ein git push?

Antwort

1

den Beispielcode nehmen, und das Hinzufügen der Iteration ...

while read local_ref local_sha remote_ref remote_sha 
do 
    ... various checks for $z40 etc... 
    for commit in $(git rev-list --abbrev-commit $remote_sha..$local_sha) 
    do 
     <your checks on $commit here> 
    done 
done