diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-03 15:09:13 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-03 15:09:13 +0300 |
commit | 83916cf0a2f9254455a08a723961db34f0840df4 (patch) | |
tree | 41995d4ec0210785de1cd71853cbd1380570b2e7 /doc | |
parent | a9c5941625be2416fbf3b514019886e8f9658416 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'doc')
-rw-r--r-- | doc/api/index.md | 43 | ||||
-rw-r--r-- | doc/api/protected_branches.md | 6 | ||||
-rw-r--r-- | doc/architecture/index.md | 11 | ||||
-rw-r--r-- | doc/development/bulk_import.md | 2 | ||||
-rw-r--r-- | doc/development/contributing/style_guides.md | 21 | ||||
-rw-r--r-- | doc/user/group/import/index.md | 43 | ||||
-rw-r--r-- | doc/user/group/manage.md | 5 |
7 files changed, 63 insertions, 68 deletions
diff --git a/doc/api/index.md b/doc/api/index.md index f3a6d0e30ce..110534ceced 100644 --- a/doc/api/index.md +++ b/doc/api/index.md @@ -4,39 +4,14 @@ group: Integrations info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments --- -# GitLab APIs **(FREE)** +# Develop with GitLab **(FREE)** -Use the GitLab APIs to automate GitLab. +Automate and interact with GitLab, and integrate with external applications. -## REST API - -A REST API is available in GitLab. - -For more information and examples, see [REST API](rest/index.md). - -For a list of the available resources and their endpoints, see -[REST API resources](api_resources.md). - -You can also use a partial [OpenAPI definition](openapi/openapi_interactive.md), -to test the API directly from the GitLab user interface. -Contributions are welcome. - -<i class="fa fa-youtube-play youtube" aria-hidden="true"></i> -For an introduction and basic steps, see -[How to make GitLab API calls](https://www.youtube.com/watch?v=0LsMC3ZiXkA). - -## GraphQL API - -A GraphQL API is available in GitLab. -For a list of the available resources and their endpoints, see -[GraphQL API resources](graphql/reference/index.md). - -With GraphQL, you can make an API request for only what you need, -and it's versioned by default. - -GraphQL co-exists with the current v4 REST API. If we have a v5 API, this should -be a compatibility layer on top of GraphQL. - -There were some patenting and licensing concerns with GraphQL. However, these -have been resolved to our satisfaction. The reference implementations -were re-licensed under MIT, and the OWF license used for the GraphQL specification. +- [Integrations](../integration/index.md) +- [Webhooks](../user/project/integrations/webhooks.md) +- [Visual Studio Code extension](../user/project/repository/vscode.md) +- [REST API](rest/index.md) +- [GraphQL API](graphql/index.md) +- [Lint `.gitlab-ci.yml`](lint.md) +- [GitLab as an OAuth2 provider](oauth2.md) diff --git a/doc/api/protected_branches.md b/doc/api/protected_branches.md index a703c0657c5..5f6e03fde4d 100644 --- a/doc/api/protected_branches.md +++ b/doc/api/protected_branches.md @@ -83,7 +83,8 @@ Example response: ``` Users on GitLab Premium or higher also see -the `user_id` and `group_id` parameters: +the `user_id`, `group_id` and `inherited` parameters. If the `inherited` parameter +exists, means the setting was inherited from the project's group. Example response: @@ -111,7 +112,8 @@ Example response: } ], "allow_force_push":false, - "code_owner_approval_required": false + "code_owner_approval_required": false, + "inherited": true }, ... ] diff --git a/doc/architecture/index.md b/doc/architecture/index.md index 689ff2afaa0..2467ba33fae 100644 --- a/doc/architecture/index.md +++ b/doc/architecture/index.md @@ -8,3 +8,14 @@ toc: false - [Architecture at GitLab](https://about.gitlab.com/handbook/engineering/architecture/) - [Architecture Workflow](https://about.gitlab.com/handbook/engineering/architecture/workflow/) + +## Contributing + +At GitLab, everyone can contribute, including to our architecture blueprints. + +If you would like to contribute to any of these blueprints, feel free to: + +1. Go to the [source files in the repository](https://gitlab.com/gitlab-org/gitlab/tree/master/doc/architecture/blueprints) + and select the blueprint you wish to contribute to. +1. [Create a merge request](../development/contributing/merge_request_workflow.md). +1. `@` message both an author and a coach assigned to the blueprint, as listed below. diff --git a/doc/development/bulk_import.md b/doc/development/bulk_import.md index e2a10d4b7a7..0d9c7348915 100644 --- a/doc/development/bulk_import.md +++ b/doc/development/bulk_import.md @@ -42,7 +42,7 @@ step to generate the file to be imported. GitLab Group migration leverages on [GitLab API](../api/rest/index.md) to speed the migration. -And, because we're on the road to [GraphQL](../api/index.md#graphql-api), +And, because we're on the road to [GraphQL](../api/graphql/index.md), GitLab Group Migration will be contributing towards to expand the GraphQL API coverage, which benefits both GitLab and its users. diff --git a/doc/development/contributing/style_guides.md b/doc/development/contributing/style_guides.md index 0a030d1f3bc..28ce8e6ff4b 100644 --- a/doc/development/contributing/style_guides.md +++ b/doc/development/contributing/style_guides.md @@ -9,15 +9,16 @@ info: To determine the technical writer assigned to the Stage/Group associated w ## Editor/IDE styling standardization -We use [EditorConfig](https://editorconfig.org/) to automatically apply certain styling -standards before files are saved locally. Most editors/IDEs will honor the `.editorconfig` -settings automatically by default. If your editor/IDE does not automatically support `.editorconfig`, -we suggest investigating to see if a plugin exists. For instance here is the +We use [EditorConfig](https://editorconfig.org/) to automatically apply certain styling standards before files are saved +locally. Some editors and IDEs honor the `.editorconfig` settings [automatically by default](https://editorconfig.org/#pre-installed). + +If your editor or IDE does not automatically support `.editorconfig`, we suggest investigating to +[see if a plugin exists](https://editorconfig.org/#download). For example, a [plugin for vim](https://github.com/editorconfig/editorconfig-vim). ## Pre-push static analysis with Lefthook -[Lefthook](https://github.com/Arkweid/lefthook) is a Git hooks manager that allows +[Lefthook](https://github.com/evilmartians/lefthook) is a Git hooks manager that allows custom logic to be executed prior to Git committing or pushing. GitLab comes with Lefthook configuration (`lefthook.yml`), but it must be installed. @@ -54,7 +55,7 @@ This should return the Lefthook version and the list of executable commands with Lefthook is configured with a combination of: - Project configuration in [`lefthook.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lefthook.yml). -- Any [local configuration](https://github.com/Arkweid/lefthook/blob/master/docs/full_guide.md#local-config). +- Any [local configuration](https://github.com/evilmartians/lefthook/blob/master/README.md#local-config). ### Disable Lefthook temporarily @@ -72,7 +73,7 @@ To run the `pre-push` Git hook, run: bundle exec lefthook run pre-push ``` -For more information, check out [Lefthook documentation](https://github.com/Arkweid/lefthook/blob/master/docs/full_guide.md#run-githook-group-directly). +For more information, check out [Lefthook documentation](https://github.com/evilmartians/lefthook/blob/master/README.md#direct-control). ### Skip Lefthook checks per tag @@ -91,7 +92,7 @@ pre-push: - documentation ``` -For more information, check out [Lefthook documentation](https://github.com/Arkweid/lefthook/blob/master/docs/full_guide.md#skip-some-tags-on-the-fly). +For more information, check out [Lefthook documentation](https://github.com/evilmartians/lefthook/blob/master/docs/configuration.md#exclude_tags). ### Skip or enable a specific Lefthook check @@ -106,7 +107,7 @@ pre-push: skip: false ``` -For more information, check out [Lefthook documentation Skipping commands section](https://github.com/evilmartians/lefthook/blob/master/docs/full_guide.md#skipping-commands). +For more information, check out [Lefthook documentation Skipping commands section](https://github.com/evilmartians/lefthook/blob/master/docs/configuration.md#skip). ## Database migrations @@ -150,8 +151,6 @@ See the dedicated [Documentation Style Guide](../documentation/styleguide/index. ### Guidelines for good practices -> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36576/) in GitLab 13.2 as GitLab Development documentation. - *Good practice* examples demonstrate encouraged ways of writing code while comparing with examples of practices to avoid. These examples are labeled as *Bad* or *Good*. In GitLab development guidelines, when presenting the cases, diff --git a/doc/user/group/import/index.md b/doc/user/group/import/index.md index a56860118a1..6e625f41c19 100644 --- a/doc/user/group/import/index.md +++ b/doc/user/group/import/index.md @@ -35,30 +35,19 @@ Also on self-managed GitLab, by default [migrating project items](#migrated-proj this feature, ask an administrator to [enable the feature flag](../../../administration/feature_flags.md) named `bulk_import_projects`. The feature is not ready for production use. On GitLab.com, migration of both groups and projects is available. -Prerequisites: - -- Network connection between instances or GitLab.com. Must support HTTPS. -- Both GitLab instances have group migration by direct transfer - [enabled in application settings](../../admin_area/settings/visibility_and_access_controls.md#enable-migration-of-groups-and-projects-by-direct-transfer) - by an instance administrator. -- Owner role on the source group to migrate from. -- At least the Maintainer role on the destination group to migrate to. Using the Developer role for this purpose was - [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/387891) in GitLab 15.8 and will be removed in GitLab 16.0. - -By direct transfer you can migrate: +Migrating groups by direct transfer copies the groups from one place to another. You can: -- Using either the UI or the [API](../../../api/bulk_imports.md). -- Many groups at once. -- Top-level groups using UI, using API you can also migrate chosen subgroups to: +- Copy many groups at once. +- Copy top-level groups to: - Another top-level group. - The subgroup of any existing top-level group. - Another GitLab instance, including GitLab.com. -- With projects (in [beta](../../../policy/alpha-beta-support.md#beta-features) and not ready for production use) or without projects. Migrating projects with groups - is available: +- Copy groups with projects (in [beta](../../../policy/alpha-beta-support.md#beta-features) and not ready for production + use) or without projects. Copying projects with groups is available: - On GitLab.com by default. - On self-managed GitLab instances after an administrator first [enables the feature flag](../../../administration/feature_flags.md) named `bulk_import_projects`. -Not all group and project resources are imported. See list of migrated resources below: +Not all group and project resources are copied. See list of copied resources below: - [Migrated group items](#migrated-group-items). - [Migrated project items](#migrated-project-items-beta). @@ -66,14 +55,30 @@ Not all group and project resources are imported. See list of migrated resources We invite you to leave your feedback about migrating by direct transfer in [the feedback issue](https://gitlab.com/gitlab-org/gitlab/-/issues/284495). +If you want to move groups instead of copying groups, you can [transfer groups](../manage.md#transfer-a-group) if the +groups are in the same GitLab instance. Transferring groups is a faster and more complete option. + +### Prerequisites + +To migrate groups by direct transfer: + +- The network connection between instances or GitLab.com must support HTTPS. +- Both GitLab instances must have group migration by direct transfer + [enabled in application settings](../../admin_area/settings/visibility_and_access_controls.md#enable-migration-of-groups-and-projects-by-direct-transfer) + by an instance administrator. +- You must have the Owner role on the source group to migrate from. +- You must have at least the Maintainer role on the destination group to migrate to. Using the Developer role for this + purpose was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/387891) in GitLab 15.8 and will be removed in + GitLab 16.0. + ### Visibility rules After migration: - Private groups and projects stay private. - Public groups and projects: - - Stay public when imported into a public group. - - Become private when imported into a private group. + - Stay public when copied into a public group. + - Become private when copied into a private group. If used a private network on your source instance to hide content from the general public, make sure to have a similar setup on the destination instance, or to import into a private group. diff --git a/doc/user/group/manage.md b/doc/user/group/manage.md index f5c4d4e614a..fc72b81d74c 100644 --- a/doc/user/group/manage.md +++ b/doc/user/group/manage.md @@ -336,12 +336,15 @@ After sharing the `Frontend` group with the `Engineering` group: ## Transfer a group -You can transfer groups in the following ways: +Transferring groups moves them from one place to another in the same GitLab instance. You can: - Transfer a subgroup to a new parent group. - Convert a top-level group into a subgroup by transferring it to the desired group. - Convert a subgroup into a top-level group by transferring it out of its current group. +If you need to copy a group to a different GitLab instance, +[migrate the group by direct transfer](import/index.md#migrate-groups-by-direct-transfer-recommended). + When transferring groups, note: - Changing a group's parent can have unintended side effects. See [what happens when a repository path changes](../project/repository/index.md#what-happens-when-a-repository-path-changes). |