Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   GIT - auto modification on commit (https://www.delphipraxis.net/204620-git-auto-modification-commit.html)

himitsu 12. Jun 2020 11:27

GIT - auto modification on commit
 
GIT kann ja beim Commit und Checkout die Zeilenumbrüche anpassen.
Gibt es sowas auch für UTF-8-BOMs, also dass man die beim Commit automatisch entfernen lassen kann? (vielleicht auch wieder rein, beim Checkout im Windows)

Grund:

Viele Editoren im Windows behandeln Dateien ohne BOM als ANSI, bzw. einige Erkennen UTF-8 beim öffnen.
Delphi macht das auch, aber speichert Unicode-Dateien mit BOM ab.
Der Delphi-Editor kann UTF-8 ohne BOM richtig lesen, aber speichert es dann mit BOM
und auch die Dateisuche ist zu doof dafür und öffnet/durchsucht sie als ANSI, wenn ohne BOM.

Nun hat unser Linuxprofi ein CI gebastelt, was aber bei SQL-Dateien mit BOM abraucht. (Postgres-Console beim Ausführen von SQL-Dateien im Windows oder Linux)

quasi der Standard, wenn keine Kennzeichnung vorhanden : Linux = UTF-8 und Windows = ANSI


[add]
Zum Suchen und Ersetzen hab ich mir was zusammengesucht, das so auch erstmal die gewünschte Funktion bereitstellt.
Code:
find . -iname \*.sql -type f -exec sed -i.bak -e '1s/^\xEF\xBB\xBF//' {} \; -exec rm '{}.bak' \;
fehlt jetzt nur noch dass es automatisch geht ... .git/hooks/pre-commit.sample sieht schonmal vielversprechend aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2020 by Daniel R. Wolf