Maison > outils de développement > git > le corps du texte

Comment gitlab spécifie-t-il qu'un dossier n'est pas autorisé à être synchronisé ?

PHPz
Libérer: 2023-04-10 09:17:10
original
836 Les gens l'ont consulté

Dans GitLab, nous pouvons utiliser GitLab CI/CD pour automatiser la création, les tests et le déploiement de code. Normalement, nous aimerions synchroniser tous les fichiers sur GitLab CI/CD afin qu'ils puissent être testés et déployés.

Cependant, dans certains cas, vous souhaiterez peut-être désactiver la synchronisation de certains dossiers ou fichiers. Cet article explique comment spécifier qu'un dossier n'est pas autorisé à être synchronisé dans GitLab.

Tout d'abord, vous devez créer un fichier nommé ".gitlab-ci.yml" dans GitLab. Ce fichier est chargé de définir le pipeline CI/CD de votre projet et de spécifier comment votre code sera construit, testé et déployé.

Ensuite, vous devez utiliser le mot-clé "ignore" dans le fichier ".gitlab-ci.yml" pour spécifier les dossiers qui n'ont pas besoin d'être synchronisés. Par exemple, si vous souhaitez désactiver la synchronisation d'un dossier nommé "docs", vous pouvez ajouter le code suivant dans le fichier ".gitlab-ci.yml" :

rsync:
  script:
    - rsync -avz --exclude 'docs/' $CI_PROJECT_DIR/ user@example.com:/var/www/html/
Copier après la connexion

Dans ce code, "rsync" est un fichier utilisé pour synchroniser les fichiers de la commande, "$CI_PROJECT_DIR" pointe vers le répertoire racine du projet, "user@example.com" est l'adresse de votre serveur et "/var/www/html/" est le dossier cible que vous souhaitez synchroniser à. Parmi eux, "--exclude' docs/'" indique d'exclure tous les fichiers du dossier "docs".

En plus d'utiliser le mot-clé "ignorer", vous pouvez également utiliser d'autres options pour spécifier les fichiers ou dossiers qui n'ont pas besoin d'être synchronisés. Par exemple, le mot-clé « exclude_files » peut être utilisé pour spécifier une liste de fichiers à exclure :

rsync:
  script:
    - rsync -avz --exclude-from 'exclude_list.txt' $CI_PROJECT_DIR/ user@example.com:/var/www/html/
Copier après la connexion

Dans ce code, "--exclude-from" indique d'utiliser un fichier nommé "exclude_list.txt" comme liste d'exclusion.

De plus, vous pouvez utiliser le filtre de fichiers de GitLab CI/CD pour exclure les fichiers qui n'ont pas besoin d'être synchronisés. Par exemple, si vous souhaitez exclure tous les fichiers avec l'extension ".tmp" et ".log", vous pouvez ajouter le code suivant dans le fichier ".gitlab-ci.yml" :

rsync:
  script:
    - rsync -avz $CI_PROJECT_DIR/ user@example.com:/var/www/html/ | grep -vE '\.(tmp|log)$' | tee /tmp/rsync.log
Copier après la connexion

Dans cet exemple, "grep " La commande est utilisée pour filtrer tous les fichiers avec l'extension ".tmp" et ".log", et la commande "tee" est utilisée pour afficher la sortie filtrée à l'écran et le fichier /tmp/rsync.log en même temps. temps.

En bref, il est très simple de spécifier les dossiers ou fichiers qui n'ont pas besoin d'être synchronisés dans GitLab. Vous pouvez le faire en utilisant le mot-clé « ignorer », des filtres de fichiers ou des listes d'exclusion. Quelle que soit la méthode que vous choisissez, vous pouvez facilement contrôler quels fichiers et dossiers sont synchronisés, optimisant ainsi l'efficacité de votre pipeline CI/CD.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal