2017-06-08 06:37:35 -04:00
|
|
|
# Branches
|
|
|
|
|
2017-09-08 10:08:07 -04:00
|
|
|
Read through GiLab's branching documentation:
|
|
|
|
|
2019-01-15 13:31:12 -05:00
|
|
|
- [Create a branch](../web_editor.md#create-a-new-branch).
|
|
|
|
- [Default branch](#default-branch).
|
|
|
|
- [Protected branches](../../protected_branches.md#protected-branches).
|
|
|
|
- [Delete merged branches](#delete-merged-branches).
|
|
|
|
- [Branch filter search box](#branch-filter-search-box).
|
2017-09-08 10:08:07 -04:00
|
|
|
|
|
|
|
See also:
|
|
|
|
|
2019-01-15 13:31:12 -05:00
|
|
|
- [Branches API](../../../../api/branches.md), for information on operating on repository branches using the GitLab API.
|
|
|
|
- [GitLab Flow](../../../../university/training/gitlab_flow.md#gitlab-flow). Use the best of GitLab for your branching strategies.
|
|
|
|
- [Getting started with Git](../../../../topics/git/index.md) and GitLab.
|
2017-09-08 10:08:07 -04:00
|
|
|
|
|
|
|
## Default branch
|
|
|
|
|
|
|
|
When you create a new [project](../../index.md), GitLab sets `master` as the default
|
|
|
|
branch for your project. You can choose another branch to be your project's
|
2018-08-25 11:32:59 -04:00
|
|
|
default under your project's **Settings > Repository**.
|
2017-09-08 10:08:07 -04:00
|
|
|
|
2018-01-26 09:24:06 -05:00
|
|
|
The default branch is the branch affected by the
|
2017-09-08 10:08:07 -04:00
|
|
|
[issue closing pattern](../../issues/automatic_issue_closing.md),
|
|
|
|
which means that _an issue will be closed when a merge request is merged to
|
|
|
|
the **default branch**_.
|
|
|
|
|
|
|
|
The default branch is also protected against accidental deletion. Read through
|
|
|
|
the documentation on [protected branches](../../protected_branches.md#protected-branches)
|
|
|
|
to learn more.
|
|
|
|
|
2017-06-16 07:12:49 -04:00
|
|
|
## Delete merged branches
|
2017-06-08 06:37:35 -04:00
|
|
|
|
2018-10-24 01:46:14 -04:00
|
|
|
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6449) in GitLab 8.14.
|
2017-06-08 06:37:35 -04:00
|
|
|
|
2017-06-16 07:12:49 -04:00
|
|
|
![Delete merged branches](img/delete_merged_branches.png)
|
2017-06-08 06:37:35 -04:00
|
|
|
|
2017-06-16 07:12:49 -04:00
|
|
|
This feature allows merged branches to be deleted in bulk. Only branches that
|
2018-10-24 01:46:14 -04:00
|
|
|
have been merged and [are not protected](../../protected_branches.md) will be deleted as part of
|
2017-06-16 07:12:49 -04:00
|
|
|
this operation.
|
2017-06-08 06:37:35 -04:00
|
|
|
|
2017-10-23 08:26:52 -04:00
|
|
|
It's particularly useful to clean up old branches that were not deleted
|
2017-06-16 07:12:49 -04:00
|
|
|
automatically when a merge request was merged.
|
2017-06-08 06:37:35 -04:00
|
|
|
|
2018-10-11 10:25:30 -04:00
|
|
|
## Branch filter search box
|
|
|
|
|
2018-10-24 01:46:14 -04:00
|
|
|
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22166) in GitLab 11.5.
|
2018-10-11 10:25:30 -04:00
|
|
|
|
|
|
|
![Branch filter search box](img/branch_filter_search_box.png)
|
|
|
|
|
|
|
|
This feature allows you to search and select branches quickly. Search results appear in the following order:
|
|
|
|
|
|
|
|
- Branches with names that matched search terms exactly.
|
|
|
|
- Other branches with names that include search terms, sorted alphabetically.
|
|
|
|
|
|
|
|
Sometimes when you have hundreds of branches you may want a more flexible matching pattern. In such cases you can use the following:
|
|
|
|
|
|
|
|
- `^feature` will only match branch names that begin with 'feature'.
|
|
|
|
- `feature$` will only match branch names that end with 'feature'.
|