Der Autor möchte ein Tool erstellen, das schnell alle geänderten Dateien aus dem Verzeichnis unter Git-Kontrolle finden und ein Upgrade-Paket bilden kann, um die Upgrade-Arbeiten auf dem Server zu erleichtern.
(Wir müssen das Upgrade-Paket auf den Server kopieren und den Inhalt des Upgrade-Pakets direkt überschreiben, um das Upgrade abzuschließen)
In der Vergangenheit wurde dieses Upgrade-Paket immer manuell erstellt, was sehr mühsam war, insbesondere wenn Die Akten waren verstreut, umso mehr.
Allgemeine Idee:
1. Sie können git diff --name-only verwenden, um eine Liste zu erhalten (hier wird nur die Liste der Dateien angezeigt, die nicht festgeschrieben wurden)
crontabs/php/create_data_into_sku_flowtype_storage.php
crontabs/ php/crontab_script_base_import_to_db.php
Diese Liste enthält alle neu erstellten oder geänderten Verzeichnisse und Dateien. Sie müssen dieser Liste nur folgen, um „die Medizin zu verstehen“
2 Datei, fahren Sie Zeile für Zeile fort. Zerlegen Sie sie und erhalten Sie den entsprechenden Pfad
crontabs/php/create_data_into_sku_flowtype_storage.php
Stellen Sie dann fest, ob der durch diese Informationen angegebene übergeordnete Pfad (crontabs/php/) existiert. Wenn
nicht existiert, erstellen Sie es einzeln.
Stellen Sie dann fest, ob es sich um ein Verzeichnis handelt. Wenn ja, fügen Sie das entsprechende Verzeichnis zum Zielpfad hinzu (nicht kopieren).
Wenn es sich nicht um ein Verzeichnis handelt (es handelt sich um eine Datei).
Achten Sie darauf, das Verzeichnis nicht zu kopieren.
Darüber hinaus können Sie git log --oneline verwenden, um den Verlauf anzuzeigen.
Referenz:
Chen Jiebin, „Git Extracts the Difference Files Between Two Versions and Packages them“, 11.09.2013, http :/ /www.01happy.com/git-extract-different-files/
Das Obige hat die automatische Generierung des Upgrade-Pakets git eingeführt, einschließlich einiger Aspekte des Inhalts. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.