Wie wird ein Skript automatisch aufgerufen, bevor ein Git hinzugefügt wird?

8

Hier ist mein Anwendungsfall: Ich bearbeite PNGs und andere Sachen in meinem Git Repo. Ich würde gerne einen spezifischen Prozess auf alle PNGs anwenden, die ich gerne machen würde, und dies ist das Ergebnis des Prozesses, den ich endlich begehen möchte (das potentiell modifizierte PNG).

Am Anfang habe ich über einen Hook nachgedacht (wie ein pre-commit ), aber es ist etwas komisch, weil der Prozess die Datei ändert, also muss ich sie neu hinzufügen! Und nach dem, was ich lese , gibt es kein pre-add hook (oder so etwas).

Kann eine Lösung sein, einen Git Alias ​​zu erstellen? Aber ich möchte nicht ändern - zu viel - wie die Leute arbeiten, ich suche nach einem glatten und transparenten Weg.

Wenn Sie eine Ahnung haben ... selbst wenn der Hinweis ist, meine Prozessidee zu ändern.

    
Labynocle 18.09.2013, 16:46
quelle

3 Antworten

4

Vielleicht möchten Sie einen Smudge & amp; sauberer Filter, wobei clean während des Hinzufügens von git angewendet wird und der Fleck beim Checkout. Diese können nach Dateityp zugeordnet werden. Sehen Sie sich die Manpage 'Git Attribute (5)' und Git SCM Buch: Git Attribute an.

    
Philip Oakley 18.09.2013, 19:47
quelle
2

Es mag einen guten Grund geben, stattdessen clean zu verwenden, aber es gibt nichts, was Sie daran hindert, die Dateien während des pre-commit Hooks wieder hinzuzufügen, was meiner Meinung nach etwas intuitiver ist.

Ihr pre-commit würde ungefähr so ​​aussehen:

*run your PNG processing here* git add *.png

Das Commit wird dann wie gewohnt fortgesetzt. Wenn Sie sich etwas einfallen lassen wollen, können Sie exit 1 hineinwerfen, wenn bei der Komprimierung etwas schief geht und das Commit beendet wird.

    
dlsso 09.11.2015 23:55
quelle
0

Ich habe etwas ähnlich wie disso gemacht, indem ich gulp und gulp-git benutzt habe.

%Vor%

Diese Aufgabe wird dann am Ende von allem anderen aufgerufen. Dann habe ich gulp mit einem Pre-Commit-Hook eingerichtet. Funktioniert wie ein Zauber.

In Ihrem Fall sieht die vollständige Datei möglicherweise so aus:

%Vor%

(Beachten Sie, dass ich es nicht getestet habe ... Ich habe den Aufgabencode für Bilder von Google erhalten.)

    
MalcolmOcean 16.03.2017 13:24
quelle

Tags und Links