# How to enable or disable GitLab CI/CD

> 原文：[https://docs.gitlab.com/ee/ci/enable_or_disable_ci.html](https://docs.gitlab.com/ee/ci/enable_or_disable_ci.html)

*   [Per-project user setting](#per-project-user-setting)
*   [Site-wide admin setting](#site-wide-admin-setting)

# How to enable or disable GitLab CI/CD[](#how-to-enable-or-disable-gitlab-cicd "Permalink")

为了有效使用 GitLab CI / CD，您需要：

*   项目根目录中存在一个有效的[`.gitlab-ci.yml`](yaml/README.html)文件.
*   [跑步者](runners/README.html)正确设置.

您可以阅读我们的[快速入门指南](quick_start/README.html)以开始使用.

如果您使用的是 Jenkins 或 Drone CI 之类的外部 CI / CD 服务器，建议禁用 GitLab CI / CD，以免与提交状态 API 发生冲突.

GitLab CI/CD is exposed via the `/pipelines` and `/jobs` pages of a project. Disabling GitLab CI/CD in a project does not delete any previous jobs. In fact, the `/pipelines` and `/jobs` pages can still be accessed, although it’s hidden from the left sidebar menu.

GitLab CI / CD 在新安装中默认情况下处于启用状态，并且可以被禁用：

*   在每个项目的设置下单独进行.
*   通过修改分别用于源代码安装和 Omnibus 安装的`gitlab.yml`和`gitlab.rb`的设置在`gitlab.yml`站点范围内.

**注意：**这仅适用于作为 GitLab CI / CD 的一部分运行的管道. 这将不会启用或禁用通过[外部集成](../user/project/integrations/overview.html#integrations-listing)运行的管道.

## Per-project user setting[](#per-project-user-setting "Permalink")

要在项目中启用或禁用 GitLab CI / CD 管道：

1.  导航至**设置>常规>可见性，项目功能，权限** .
2.  展开**存储库**部分
3.  根据需要启用或禁用" **管道"**切换.

**项目可见性**还将影响管道可见性. 如果设置为：

*   **私有** ：只有项目成员才能访问管道.
*   **内部**或**公共** ：可以通过下拉框将管道设置为" **仅项目成员"**或" **具有访问权限的所有人** ".

按**保存更改**以使设置生效.

## Site-wide admin setting[](#site-wide-admin-setting "Permalink")

您可以在`gitlab.yml`站点上禁用 GitLab CI / CD，方法是修改`gitlab.yml`用于源代码安装的设置，以及`gitlab.rb`用于 Omnibus 安装的设置.

有两件事要注意：

*   禁用 GitLab CI / CD，将仅影响新创建的项目. 在此修改之前启用了此功能的项目将照常工作.
*   即使您禁用了 GitLab CI / CD，用户仍然可以在项目的设置中启用它.

对于源安装， `gitlab.yml`使用编辑器打开`gitlab.yml`并将`builds`设置为`false` ：

```
## Default project features settings
default_projects_features:
  issues: true
  merge_requests: true
  wiki: true
  snippets: false
  builds: false 
```

保存文件并重新启动 GitLab：

```
sudo service gitlab restart 
```

对于 Omnibus 安装，请编辑`/etc/gitlab/gitlab.rb`并添加以下行：

```
gitlab_rails['gitlab_default_projects_features_builds'] = false 
```

保存文件并重新配置 GitLab：

```
sudo gitlab-ctl reconfigure 
```