# Шаблон PR

Платформа dbt

## Настройка URL шаблона Pull Request (PR)

Когда вы фиксируете изменения в ветке в Studio IDE, dbt может предложить пользователям создать новый pull request для внесённых изменений кода. Чтобы включить эту возможность, убедитесь, что на странице **Сведения о репозитории** в **Настройках учётной записи** указан URL шаблона PR. Если это поле не заполнено, Studio IDE предложит пользователям слить изменения непосредственно в ветку по умолчанию.

[![Настройка шаблона PR на странице «Repository details».](/img/docs/collaborate/repo-details.jpg?v=2 "Настройка шаблона PR на странице «Repository details».")](#)Настройка шаблона PR на странице «Repository details».

### URL шаблона PR в зависимости от git‑провайдера

Параметр URL шаблона PR автоматически задаётся для большинства репозиториев в зависимости от способа подключения.

* Если вы подключаетесь к своему репозиторию через встроенные интеграции с вашим Git-провайдером или методом «Git Clone» через SSH, это поле URL будет заполнено автоматически и доступно для редактирования.
  * Для AWS CodeCommit это поле URL не заполняется автоматически, и его необходимо [настроить вручную](https://docs.getdbt.tech/docs/platform/git/import-a-project-by-git-url.md#step-5-configure-pull-request-template-urls-optional).
* Если вы подключаетесь через [управляемый репозиторий](https://docs.getdbt.tech/docs/platform/git/managed-repository.md) dbt, этот URL не будет задан, и Studio IDE предложит пользователям слить изменения непосредственно в их ветку по умолчанию.

URL шаблона PR поддерживает две переменные, которые можно использовать для построения строки URL. Эти переменные — `{{source}}` и `{{destination}}` — возвращают имена веток на основе настроенного Environment и активной ветки, открытой в IDE. Переменная `{{source}}` представляет активную ветку разработки, а переменная `{{destination}}` — настроенную базовую ветку для окружения, например `master`.

Типичный URL для создания PR выглядит так:

### Template

```text
https://github.com/dbt-labs/jaffle_shop/compare/{{destination}}..{{source}}
```

### Rendered

```text
https://github.com/dbt-labs/jaffle_shop/compare/master..my-branch
```

## Примеры шаблонов

Ниже приведены некоторые распространённые шаблоны URL, однако обратите внимание, что конкретное значение может отличаться в зависимости от используемого git‑провайдера.

### GitHub

```text
https://github.com/<org>/<repo>/compare/{{destination}}..{{source}}
```

Если вы используете GitHub Enterprise, ваш шаблон может выглядеть примерно так:

```text
https://git.<mycompany>.com/<org>/<repo>/compare/{{destination}}..{{source}}
```

### GitLab

```text
https://gitlab.com/<org>/<repo>/-/merge_requests/new?merge_request[source_branch]={{source}}&merge_request[target_branch]={{destination}}
```

### BitBucket

```text
https://bitbucket.org/<org>/<repo>/pull-requests/new?source={{source}}&dest={{destination}}
```

Если вы используете BitBucket Server или Data Center, ваш шаблон может выглядеть примерно так:

```text
https://<bitbucket-server>/projects/<proj>/repos/<repo>/pull-requests?create&sourceBranch={{source}}&targetBranch={{destination}}
```

### AWS CodeCommit

```text
https://console.aws.amazon.com/codesuite/codecommit/repositories/<repo>/pull-requests/new/refs/heads/{{destination}}/.../refs/heads/{{source}}
```

### Azure DevOps

```text
https://dev.azure.com/<org>/<project>/_git/<repo>/pullrequestcreate?sourceRef={{source}}&targetRef={{destination}}
```
