Commit e238882d authored by Takuya Noguchi's avatar Takuya Noguchi

Eliminate duplicated words

Signed-off-by: default avatarTakuya Noguchi <takninnovationresearch@gmail.com>
parent d093bbae
...@@ -2267,7 +2267,7 @@ ...@@ -2267,7 +2267,7 @@
- Disable spellcheck and autocorrect for username field in admin page - Disable spellcheck and autocorrect for username field in admin page
- Delete tags using Rugged for performance reasons (Robert Schilling) - Delete tags using Rugged for performance reasons (Robert Schilling)
- Add Slack notifications when Wiki is edited (Sebastian Klier) - Add Slack notifications when Wiki is edited (Sebastian Klier)
- Diffs load at the correct point when linking from from number - Diffs load at the correct point when linking from number
- Selected diff rows highlight - Selected diff rows highlight
- Fix emoji categories in the emoji picker - Fix emoji categories in the emoji picker
- API: Properly display annotated tags for GET /projects/:id/repository/tags (Robert Schilling) - API: Properly display annotated tags for GET /projects/:id/repository/tags (Robert Schilling)
......
...@@ -123,7 +123,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab ...@@ -123,7 +123,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab
### Create new issue discussion ### Create new issue discussion
Creates a new discussion to a single project issue. This is similar to creating Creates a new discussion to a single project issue. This is similar to creating
a note but but another comments (replies) can be added to it later. a note but other comments (replies) can be added to it later.
``` ```
POST /projects/:id/issues/:issue_iid/discussions POST /projects/:id/issues/:issue_iid/discussions
...@@ -329,7 +329,7 @@ curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitla ...@@ -329,7 +329,7 @@ curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitla
### Create new snippet discussion ### Create new snippet discussion
Creates a new discussion to a single project snippet. This is similar to creating Creates a new discussion to a single project snippet. This is similar to creating
a note but but another comments (replies) can be added to it later. a note but other comments (replies) can be added to it later.
``` ```
POST /projects/:id/snippets/:snippet_id/discussions POST /projects/:id/snippets/:snippet_id/discussions
...@@ -588,7 +588,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab ...@@ -588,7 +588,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab
### Create new merge request discussion ### Create new merge request discussion
Creates a new discussion to a single project merge request. This is similar to creating Creates a new discussion to a single project merge request. This is similar to creating
a note but but another comments (replies) can be added to it later. a note but other comments (replies) can be added to it later.
``` ```
POST /projects/:id/merge_requests/:merge_request_iid/discussions POST /projects/:id/merge_requests/:merge_request_iid/discussions
...@@ -881,7 +881,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab ...@@ -881,7 +881,7 @@ curl --request GET --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab
### Create new commit discussion ### Create new commit discussion
Creates a new discussion to a single project commit. This is similar to creating Creates a new discussion to a single project commit. This is similar to creating
a note but but another comments (replies) can be added to it later. a note but other comments (replies) can be added to it later.
``` ```
POST /projects/:id/commits/:commit_id/discussions POST /projects/:id/commits/:commit_id/discussions
......
...@@ -64,7 +64,7 @@ applications: ...@@ -64,7 +64,7 @@ applications:
## Configure GitLab CI/CD to deploy your application ## Configure GitLab CI/CD to deploy your application
Now we need to add the the GitLab CI/CD configuration file Now we need to add the GitLab CI/CD configuration file
([`.gitlab-ci.yml`](../../yaml/README.md)) to our ([`.gitlab-ci.yml`](../../yaml/README.md)) to our
project's root. This is how GitLab figures out what commands need to be run whenever project's root. This is how GitLab figures out what commands need to be run whenever
code is pushed to our repository. We will add the following `.gitlab-ci.yml` code is pushed to our repository. We will add the following `.gitlab-ci.yml`
......
...@@ -43,7 +43,7 @@ sudo apt-get install redis-server ...@@ -43,7 +43,7 @@ sudo apt-get install redis-server
Verify that you can connect to the server with the `gitlab-runner` user: Verify that you can connect to the server with the `gitlab-runner` user:
```bash ```bash
# Try connecting the the Redis server # Try connecting the Redis server
sudo -u gitlab-runner -H redis-cli sudo -u gitlab-runner -H redis-cli
# Quit the session # Quit the session
......
...@@ -400,7 +400,7 @@ except master. ...@@ -400,7 +400,7 @@ except master.
> `changes` policy [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/19232) in 11.4 > `changes` policy [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/19232) in 11.4
CAUTION: **Warning:** CAUTION: **Warning:**
This an _alpha_ feature, and it it subject to change at any time without This an _alpha_ feature, and it is subject to change at any time without
prior notice! prior notice!
Since GitLab 10.0 it is possible to define a more elaborate only/except job Since GitLab 10.0 it is possible to define a more elaborate only/except job
...@@ -1532,7 +1532,7 @@ test: ...@@ -1532,7 +1532,7 @@ test:
``` ```
By default, a job will be retried on all failure cases. To have a better control By default, a job will be retried on all failure cases. To have a better control
on which failures to retry, `retry` can be a hash with with the following keys: on which failures to retry, `retry` can be a hash with the following keys:
- `max`: The maximum number of retries. - `max`: The maximum number of retries.
- `when`: The failure cases to retry. - `when`: The failure cases to retry.
......
...@@ -42,7 +42,7 @@ run: unicorn: (pid 30960) 14204s; run: log: (pid 13809) 2432047s ...@@ -42,7 +42,7 @@ run: unicorn: (pid 30960) 14204s; run: log: (pid 13809) 2432047s
GitLab can be considered to have two layers from a process perspective: GitLab can be considered to have two layers from a process perspective:
- **Monitoring**: Anything from this layer is not required to deliver GitLab the application, but will allow administrators more insight into their infrastructure and what the service as a whole is doing. - **Monitoring**: Anything from this layer is not required to deliver GitLab the application, but will allow administrators more insight into their infrastructure and what the service as a whole is doing.
- **Core**: Any process that is vital for the delivery of GitLab as as platform. If any of these processes halt there will be a GitLab outage. For the Core layer, you can further divide into: - **Core**: Any process that is vital for the delivery of GitLab as a platform. If any of these processes halt there will be a GitLab outage. For the Core layer, you can further divide into:
- **Processors**: These processes are responsible for actually performing operations and presenting the service. - **Processors**: These processes are responsible for actually performing operations and presenting the service.
- **Data**: These services store/expose structured data for the GitLab service. - **Data**: These services store/expose structured data for the GitLab service.
...@@ -86,7 +86,7 @@ GitLab is comprised of a large number of services that all log. We started bundl ...@@ -86,7 +86,7 @@ GitLab is comprised of a large number of services that all log. We started bundl
- [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/nginx.html) - [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/nginx.html)
- Layer: Core Service (Processor) - Layer: Core Service (Processor)
Nginx as as an ingress port for all HTTP requests and routes them to the approriate sub-systems within GitLab. We are bundling an unmodified version of the popular open source webserver. Nginx as an ingress port for all HTTP requests and routes them to the approriate sub-systems within GitLab. We are bundling an unmodified version of the popular open source webserver.
### node-exporter ### node-exporter
......
...@@ -175,7 +175,7 @@ Severity levels can be applied further depending on the facet of the impact; e.g ...@@ -175,7 +175,7 @@ Severity levels can be applied further depending on the facet of the impact; e.g
| ~S1 | >50% users affected (possible company extinction level event) | Significant impact on all of GitLab.com | | | ~S1 | >50% users affected (possible company extinction level event) | Significant impact on all of GitLab.com | |
| ~S2 | Many users or multiple paid customers affected (but not apocalyptic)| Significant impact on large portions of GitLab.com | Degradation is guaranteed to occur in the near future | | ~S2 | Many users or multiple paid customers affected (but not apocalyptic)| Significant impact on large portions of GitLab.com | Degradation is guaranteed to occur in the near future |
| ~S3 | A few users or a single paid customer affected | Limited impact on important portions of GitLab.com | Degradation is likely to occur in the near future | | ~S3 | A few users or a single paid customer affected | Limited impact on important portions of GitLab.com | Degradation is likely to occur in the near future |
| ~S4 | No paid users/customer affected, or expected to in the near future | Minor impact on on GitLab.com | Degradation _may_ occur but it's not likely | | ~S4 | No paid users/customer affected, or expected to in the near future | Minor impact on GitLab.com | Degradation _may_ occur but it's not likely |
## Label for community contributors ## Label for community contributors
......
...@@ -419,7 +419,7 @@ view. For instance the approval code in the project's settings page. ...@@ -419,7 +419,7 @@ view. For instance the approval code in the project's settings page.
**Mitigations** **Mitigations**
Blocks of code that are EE-specific should be moved to partials. This Blocks of code that are EE-specific should be moved to partials. This
avoids conflicts with big chunks of HAML code that that are not fun to avoids conflicts with big chunks of HAML code that are not fun to
resolve when you add the indentation to the equation. resolve when you add the indentation to the equation.
EE-specific views should be placed in `ee/app/views/`, using extra EE-specific views should be placed in `ee/app/views/`, using extra
......
...@@ -123,7 +123,7 @@ droplab.init().addData([{ ...@@ -123,7 +123,7 @@ droplab.init().addData([{
``` ```
Alternatively, you can specify a specific dropdown to add this data to but passing Alternatively, you can specify a specific dropdown to add this data to but passing
the data as the second argument and and the `id` of the trigger element as the first argument. the data as the second argument and the `id` of the trigger element as the first argument.
```html ```html
<a href="#" data-dropdown-trigger="#list" id="trigger">Toggle</a> <a href="#" data-dropdown-trigger="#list" id="trigger">Toggle</a>
......
...@@ -394,7 +394,7 @@ This is especially useful whenever it's showing 500 internal server error. ...@@ -394,7 +394,7 @@ This is especially useful whenever it's showing 500 internal server error.
### Shared contexts ### Shared contexts
All shared contexts should be be placed under `spec/support/shared_contexts/`. All shared contexts should be placed under `spec/support/shared_contexts/`.
Shared contexts can be placed in subfolder if they apply to a certain type of Shared contexts can be placed in subfolder if they apply to a certain type of
specs only (e.g. features, requests etc.) but shouldn't be if they apply to specs only (e.g. features, requests etc.) but shouldn't be if they apply to
multiple type of specs. multiple type of specs.
...@@ -404,7 +404,7 @@ Each file should include only one context and have a descriptive name, e.g. ...@@ -404,7 +404,7 @@ Each file should include only one context and have a descriptive name, e.g.
### Shared examples ### Shared examples
All shared examples should be be placed under `spec/support/shared_examples/`. All shared examples should be placed under `spec/support/shared_examples/`.
Shared examples can be placed in subfolder if they apply to a certain type of Shared examples can be placed in subfolder if they apply to a certain type of
specs only (e.g. features, requests etc.) but shouldn't be if they apply to specs only (e.g. features, requests etc.) but shouldn't be if they apply to
multiple type of specs. multiple type of specs.
...@@ -416,7 +416,7 @@ Each file should include only one context and have a descriptive name, e.g. ...@@ -416,7 +416,7 @@ Each file should include only one context and have a descriptive name, e.g.
Helpers are usually modules that provide some methods to hide the complexity of Helpers are usually modules that provide some methods to hide the complexity of
specific RSpec examples. You can define helpers in RSpec files if they're not specific RSpec examples. You can define helpers in RSpec files if they're not
intended to be shared with other specs. Otherwise, they should be be placed intended to be shared with other specs. Otherwise, they should be placed
under `spec/support/helpers/`. Helpers can be placed in subfolder if they apply under `spec/support/helpers/`. Helpers can be placed in subfolder if they apply
to a certain type of specs only (e.g. features, requests etc.) but shouldn't be to a certain type of specs only (e.g. features, requests etc.) but shouldn't be
if they apply to multiple type of specs. if they apply to multiple type of specs.
...@@ -470,7 +470,7 @@ GitLab uses [factory_bot] as a test fixture replacement. ...@@ -470,7 +470,7 @@ GitLab uses [factory_bot] as a test fixture replacement.
### Fixtures ### Fixtures
All fixtures should be be placed under `spec/fixtures/`. All fixtures should be placed under `spec/fixtures/`.
### Repositories ### Repositories
......
...@@ -89,7 +89,7 @@ We'll now create a VPC, a virtual networking environment that you'll control: ...@@ -89,7 +89,7 @@ We'll now create a VPC, a virtual networking environment that you'll control:
### Subnets ### Subnets
Now, let's create some subnets in different Availability Zones. Make sure Now, let's create some subnets in different Availability Zones. Make sure
that each subnet is associated the the VPC we just created and that each subnet is associated to the VPC we just created and
that CIDR blocks don't overlap. This will also that CIDR blocks don't overlap. This will also
allow us to enable multi AZ for redundancy. allow us to enable multi AZ for redundancy.
...@@ -168,7 +168,7 @@ The security group is basically the firewall: ...@@ -168,7 +168,7 @@ The security group is basically the firewall:
1. Select **Security Groups** from the left menu. 1. Select **Security Groups** from the left menu.
1. Click **Create Security Group** and fill in the details. Give it a name, 1. Click **Create Security Group** and fill in the details. Give it a name,
add a description, and choose the VPC we created previously add a description, and choose the VPC we created previously
1. Select the security group from the list and at the the bottom select the 1. Select the security group from the list and at the bottom select the
Inbound Rules tab. You will need to open the SSH, HTTP, and HTTPS ports. Set Inbound Rules tab. You will need to open the SSH, HTTP, and HTTPS ports. Set
the source to `0.0.0.0/0`. the source to `0.0.0.0/0`.
......
...@@ -37,7 +37,7 @@ Once you have an Azure account, you can get started. Login to Azure using ...@@ -37,7 +37,7 @@ Once you have an Azure account, you can get started. Login to Azure using
![Azure Dashboard](img/azure-dashboard.png) ![Azure Dashboard](img/azure-dashboard.png)
The Dashboard gives you a quick overview of Azure resources, and from here you you can build VMs, The Dashboard gives you a quick overview of Azure resources, and from here you can build VMs,
create SQL Databases, author websites, and perform lots of other cloud tasks. create SQL Databases, author websites, and perform lots of other cloud tasks.
## Create New VM ## Create New VM
......
...@@ -84,7 +84,7 @@ rbac: ...@@ -84,7 +84,7 @@ rbac:
## ##
# serviceAccountName: default # serviceAccountName: default
## Configuration for the Pods that that the runner launches for each new job ## Configuration for the Pods that the runner launches for each new job
## ##
runners: runners:
## Default container image to use for builds when none is specified ## Default container image to use for builds when none is specified
......
...@@ -75,7 +75,7 @@ The minimum key size is 1024 bits, defaulting to 2048. If you wish to generate a ...@@ -75,7 +75,7 @@ The minimum key size is 1024 bits, defaulting to 2048. If you wish to generate a
stronger RSA key pair, specify the `-b` flag with a higher bit value than the stronger RSA key pair, specify the `-b` flag with a higher bit value than the
default. default.
The old, default password encoding for SSH private keys keys is The old, default password encoding for SSH private keys is
[insecure](https://latacora.singles/2018/08/03/the-default-openssh.html); [insecure](https://latacora.singles/2018/08/03/the-default-openssh.html);
it's only a single round of an MD5 hash. Since OpenSSH version 6.5, you should it's only a single round of an MD5 hash. Since OpenSSH version 6.5, you should
use the `-o` option to `ssh-keygen` to encode your private key in a new, more use the `-o` option to `ssh-keygen` to encode your private key in a new, more
......
...@@ -22,7 +22,7 @@ an extensive selection of dependency managed libraries and applications. ...@@ -22,7 +22,7 @@ an extensive selection of dependency managed libraries and applications.
If you are sure you don't need access to any additional development libraries If you are sure you don't need access to any additional development libraries
or don't have approximately 15gb of available disk space for Xcode and Homebrew or don't have approximately 15gb of available disk space for Xcode and Homebrew
use one of the the aforementioned methods. use one of the aforementioned methods.
### Installing Xcode ### Installing Xcode
......
...@@ -689,7 +689,7 @@ A [model](http://www.umsl.edu/~hugheyd/is6840/waterfall.html) of building softwa ...@@ -689,7 +689,7 @@ A [model](http://www.umsl.edu/~hugheyd/is6840/waterfall.html) of building softwa
### Webhooks ### Webhooks
A way for for an app to [provide](https://docs.gitlab.com/ce/user/project/integrations/webhooks.html) other applications with real-time information (e.g., send a message to a slack channel when a commit is pushed.) Read about setting up [custom git hooks](https://gitlab.com/help/administration/custom_hooks.md) for when webhooks are insufficient. A way for an app to [provide](https://docs.gitlab.com/ce/user/project/integrations/webhooks.html) other applications with real-time information (e.g., send a message to a slack channel when a commit is pushed.) Read about setting up [custom git hooks](https://gitlab.com/help/administration/custom_hooks.md) for when webhooks are insufficient.
### Wiki ### Wiki
......
...@@ -269,7 +269,7 @@ sudo systemctl daemon-reload ...@@ -269,7 +269,7 @@ sudo systemctl daemon-reload
### 9. Install libs, migrations, etc. ### 9. Install libs, migrations, etc.
GitLab 9.0.11 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570) GitLab 9.0.11 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570)
a dependency on on the `re2` regular expression library. To install this dependency: a dependency on the `re2` regular expression library. To install this dependency:
```bash ```bash
sudo apt-get install libre2-dev sudo apt-get install libre2-dev
......
...@@ -269,7 +269,7 @@ sudo systemctl daemon-reload ...@@ -269,7 +269,7 @@ sudo systemctl daemon-reload
### 9. Install libs, migrations, etc. ### 9. Install libs, migrations, etc.
GitLab 9.1.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570) GitLab 9.1.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570)
a dependency on on the `re2` regular expression library. To install this dependency: a dependency on the `re2` regular expression library. To install this dependency:
```bash ```bash
sudo apt-get install libre2-dev sudo apt-get install libre2-dev
......
...@@ -227,7 +227,7 @@ sudo systemctl daemon-reload ...@@ -227,7 +227,7 @@ sudo systemctl daemon-reload
### 10. Install libs, migrations, etc. ### 10. Install libs, migrations, etc.
GitLab 9.2.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570) GitLab 9.2.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570)
a dependency on on the `re2` regular expression library. To install this dependency: a dependency on the `re2` regular expression library. To install this dependency:
```bash ```bash
sudo apt-get install libre2-dev sudo apt-get install libre2-dev
......
...@@ -263,7 +263,7 @@ sudo systemctl daemon-reload ...@@ -263,7 +263,7 @@ sudo systemctl daemon-reload
### 12. Install libs, migrations, etc. ### 12. Install libs, migrations, etc.
GitLab 9.3.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570) GitLab 9.3.8 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570)
a dependency on on the `re2` regular expression library. To install this dependency: a dependency on the `re2` regular expression library. To install this dependency:
```bash ```bash
sudo apt-get install libre2-dev sudo apt-get install libre2-dev
......
...@@ -276,7 +276,7 @@ sudo systemctl daemon-reload ...@@ -276,7 +276,7 @@ sudo systemctl daemon-reload
### 12. Install libs, migrations, etc. ### 12. Install libs, migrations, etc.
GitLab 9.4 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570) GitLab 9.4 [introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/24570)
a dependency on on the `re2` regular expression library. To install this dependency: a dependency on the `re2` regular expression library. To install this dependency:
```bash ```bash
sudo apt-get install libre2-dev sudo apt-get install libre2-dev
......
...@@ -4,7 +4,7 @@ You can block email addresses of specific domains, or whitelist only some ...@@ -4,7 +4,7 @@ You can block email addresses of specific domains, or whitelist only some
specific domains via the **Application Settings** in the Admin area. specific domains via the **Application Settings** in the Admin area.
>**Note**: These restrictions are only applied during sign-up. An admin is >**Note**: These restrictions are only applied during sign-up. An admin is
able to add add a user through the admin panel with a disallowed domain. Also able to add a user through the admin panel with a disallowed domain. Also
note that the users can change their email addresses after signup to note that the users can change their email addresses after signup to
disallowed domains. disallowed domains.
......
...@@ -97,7 +97,7 @@ From the group issue list page and the group merge request list page, you can [f ...@@ -97,7 +97,7 @@ From the group issue list page and the group merge request list page, you can [f
## Subscribing to labels ## Subscribing to labels
From the project label list page and the group label list page, you can subscribe to [notifications](../../workflow/notifications.md) of a given label, to alert you that that label has been assigned to an issue or merge request. From the project label list page and the group label list page, you can subscribe to [notifications](../../workflow/notifications.md) of a given label, to alert you that the label has been assigned to an issue or merge request.
![Labels subscriptions](img/labels_subscriptions.png) ![Labels subscriptions](img/labels_subscriptions.png)
......
...@@ -21,7 +21,7 @@ the milestone to the issue. ...@@ -21,7 +21,7 @@ the milestone to the issue.
Milestones can be used as releases. Milestones can be used as releases.
Set the milestone due date to represent the release date of your release. Set the milestone due date to represent the release date of your release.
(And leave the milestone start date blank.) (And leave the milestone start date blank.)
Set the the milestone title to the version of your release, Set the milestone title to the version of your release,
such as `Version 9.4`. such as `Version 9.4`.
Add an issue to your release by associating Add an issue to your release by associating
the milestone to the issue. the milestone to the issue.
......
...@@ -11,7 +11,7 @@ date: 2017-02-22 ...@@ -11,7 +11,7 @@ date: 2017-02-22
Setting up GitLab Pages with custom domains, and adding SSL/TLS certificates to them, are optional features of GitLab Pages. Setting up GitLab Pages with custom domains, and adding SSL/TLS certificates to them, are optional features of GitLab Pages.
These steps assume you've already [set your site up](getting_started_part_two.md) and and it's served under the default Pages domain `namespace.gitlab.io`, or `namespace.gitlab.io/project-name`. These steps assume you've already [set your site up](getting_started_part_two.md) and it's served under the default Pages domain `namespace.gitlab.io`, or `namespace.gitlab.io/project-name`.
## Adding your custom domain to GitLab Pages ## Adding your custom domain to GitLab Pages
......
...@@ -166,7 +166,7 @@ with Pages, read through this series: ...@@ -166,7 +166,7 @@ with Pages, read through this series:
If you're using GitLab Pages default domain (`.gitlab.io`), your website will be If you're using GitLab Pages default domain (`.gitlab.io`), your website will be
automatically secure and available under HTTPS. If you're using your own domain, you can automatically secure and available under HTTPS. If you're using your own domain, you can
optionally secure it with with SSL/TLS certificates. You can read the following optionally secure it with SSL/TLS certificates. You can read the following
tutorials to learn how to use these third-party certificates with GitLab Pages: tutorials to learn how to use these third-party certificates with GitLab Pages:
- [CloudFlare](https://about.gitlab.com/2017/02/07/setting-up-gitlab-pages-with-cloudflare-certificates/) - [CloudFlare](https://about.gitlab.com/2017/02/07/setting-up-gitlab-pages-with-cloudflare-certificates/)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment