In GitLab können wir GitLab CI/CD verwenden, um das Erstellen, Testen und Bereitstellen von Code zu automatisieren. Normalerweise möchten wir alle Dateien mit GitLab CI/CD synchronisieren, damit sie getestet und bereitgestellt werden können.
In manchen Fällen möchten Sie jedoch möglicherweise die Synchronisierung bestimmter Ordner oder Dateien deaktivieren. In diesem Artikel erfahren Sie, wie Sie festlegen, dass ein Ordner in GitLab nicht synchronisiert werden darf.
Zunächst müssen Sie in GitLab eine Datei mit dem Namen „.gitlab-ci.yml“ erstellen. Diese Datei ist dafür verantwortlich, die CI/CD-Pipeline Ihres Projekts zu definieren und anzugeben, wie Ihr Code erstellt, getestet und bereitgestellt wird.
Als nächstes müssen Sie das Schlüsselwort „ignore“ in der Datei „.gitlab-ci.yml“ verwenden, um die Ordner anzugeben, die nicht synchronisiert werden müssen. Wenn Sie beispielsweise die Synchronisierung eines Ordners namens „docs“ deaktivieren möchten, können Sie den folgenden Code in die Datei „.gitlab-ci.yml“ einfügen:
rsync: script: - rsync -avz --exclude 'docs/' $CI_PROJECT_DIR/ user@example.com:/var/www/html/
In diesem Code ist „rsync“ eine verwendete Datei Um Dateien des Befehls zu synchronisieren, zeigt „$CI_PROJECT_DIR“ auf das Stammverzeichnis des Projekts, „user@example.com“ ist Ihre Serveradresse und „/var/www/html/“ ist der Zielordner, den Sie synchronisieren möchten Zu. Darunter bedeutet „--exclude‘ docs/‘“, dass alle Dateien im Ordner „docs“ ausgeschlossen werden sollen.
Neben der Verwendung des Schlüsselworts „ignore“ können Sie auch einige andere Optionen verwenden, um Dateien oder Ordner anzugeben, die nicht synchronisiert werden müssen. Beispielsweise kann das Schlüsselwort „exclude_files“ verwendet werden, um eine Liste der auszuschließenden Dateien anzugeben:
rsync: script: - rsync -avz --exclude-from 'exclude_list.txt' $CI_PROJECT_DIR/ user@example.com:/var/www/html/
In diesem Code weist „--exclude-from“ an, eine Datei mit dem Namen „exclude_list.txt“ als Ausschlussliste zu verwenden.
Darüber hinaus können Sie den Dateifilter von GitLab CI/CD verwenden, um Dateien auszuschließen, die nicht synchronisiert werden müssen. Wenn Sie beispielsweise alle Dateien mit der Erweiterung „.tmp“ und „.log“ ausschließen möchten, können Sie den folgenden Code in die Datei „.gitlab-ci.yml“ einfügen:
rsync: script: - rsync -avz $CI_PROJECT_DIR/ user@example.com:/var/www/html/ | grep -vE '\.(tmp|log)$' | tee /tmp/rsync.log
In diesem Beispiel „grep „ Mit dem Befehl werden alle Dateien mit der Erweiterung „.tmp“ und „.log“ gefiltert, und mit dem Befehl „tee“ wird die gefilterte Ausgabe gleichzeitig auf dem Bildschirm und in der Datei /tmp/rsync.log ausgegeben.
Kurz gesagt, es ist sehr einfach, in GitLab die Ordner oder Dateien anzugeben, die nicht synchronisiert werden müssen. Sie können dies mit dem Schlüsselwort „ignore“, Dateifiltern oder Ausschlusslisten tun. Unabhängig davon, für welche Methode Sie sich entscheiden, können Sie ganz einfach steuern, welche Dateien und Ordner synchronisiert werden, und so die Effizienz Ihrer CI/CD-Pipeline optimieren.
Das obige ist der detaillierte Inhalt vonWie gibt Gitlab an, dass ein Ordner nicht synchronisiert werden darf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!