diff options
Diffstat (limited to 'doc/development/contributing/first_contribution.md')
-rw-r--r-- | doc/development/contributing/first_contribution.md | 56 |
1 files changed, 46 insertions, 10 deletions
diff --git a/doc/development/contributing/first_contribution.md b/doc/development/contributing/first_contribution.md index 4bebabbc125..3477590f40b 100644 --- a/doc/development/contributing/first_contribution.md +++ b/doc/development/contributing/first_contribution.md @@ -1,6 +1,6 @@ --- stage: none -group: Development +group: unassigned 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 --- @@ -18,12 +18,16 @@ or you can choose other UI text to update. ## Steps -To make a contribution, you will: +To make a contribution, follow these steps: -1. [Configure the GitLab Development Kit](#step-1-configure-the-gitlab-development-kit) -1. [Make your code updates](#step-2-change-the-code) -1. [Push your changes to the community fork](#step-3-push-your-changes-to-the-community-fork) -1. [Create a merge request](#step-4-create-a-merge-request) +- [Prerequisites](#prerequisites) +- [Step 1: Configure the GitLab Development Kit](#step-1-configure-the-gitlab-development-kit) +- [Step 2: Change the code](#step-2-change-the-code) +- [Step 3: Push your changes to the community fork](#step-3-push-your-changes-to-the-community-fork) +- [Step 4: Create a merge request](#step-4-create-a-merge-request) +- [Step 5: Complete the review process](#step-5-complete-the-review-process) + +[View an interactive demo](https://gitlab.navattic.com/ak10d67) of the contribution process. ## Prerequisites @@ -42,6 +46,8 @@ On GitLab.com: ## Step 1: Configure the GitLab Development Kit +[View an interactive demo of this step](https://gitlab.navattic.com/xtk20s8x). + The GitLab Development Kit (GDK) is a local version of GitLab that's yours to play with. It's just like an installation of self-managed GitLab. It includes sample projects you can use to test functionality, and it gives you access to administrator functionality. @@ -150,8 +156,16 @@ To confirm it was successful: If you get errors, run `gdk doctor` to troubleshoot. For more advanced troubleshooting, see [the troubleshooting docs](https://gitlab.com/gitlab-org/gitlab-development-kit/-/tree/main/doc/troubleshooting). +### Gitpod + +If you want to contribute without the overhead of setting up a local development environment, +you can use [Gitpod](../../integration/gitpod.md) instead. +Gitpod runs a virtual instance of the GDK. + ## Step 2: Change the code +[View an interactive demo of this step](https://gitlab.navattic.com/uu5a0dc5). + Now for the fun part. Let's edit some code. In this example, I found some UI text I'd like to change. @@ -250,6 +264,8 @@ To view these changes in action, you can ## Step 3: Push your changes to the community fork +[View an interactive demo of this step](https://gitlab.navattic.com/rhdu0iro). + Now you're going to push your changes to the community fork. This is the next step in getting your changes put into the main GitLab repository. @@ -294,6 +310,8 @@ in getting your changes put into the main GitLab repository. ## Step 4: Create a merge request +[View an interactive demo of this step](https://gitlab.navattic.com/tu5n0haw). + Now you're ready to push changes from the community fork to the main GitLab repository! 1. Go to [the community fork on GitLab.com](https://gitlab.com/gitlab-community/gitlab). @@ -333,8 +351,26 @@ Now, any time you want to make a contribution to GitLab, you can just go to the `gitlab-development-kit` folder and run `gdk update`. Then make your changes in the `gitlab` directory and push them to the fork. -If you need help at any point in the process, type `@gitlab-bot help` in a comment -or initiate a [mentor session](https://about.gitlab.com/community/contribute/mentor-sessions/) -on [Discord](https://discord.gg/gitlab). +## Step 5: Complete the review process + +After you create a merge request, GitLab automatically triggers a [CI/CD pipeline](../../ci/pipelines/index.md) +that runs tests, linting, security scans, and more. + +Your pipeline must be successful for your merge request to be merged. + +- To check the status of your pipeline, at the top of your merge request, select **Pipelines**. +- If you need help understanding or fixing the pipeline, in a comment, use the `@gitlab-bot help` command. + +### Getting a review + +GitLab will triage your merge request automatically. +However, you can type `@gitlab-bot ready` in a comment to alert reviewers that your MR is ready. + +- When the label is set to `workflow::ready for review`, [a developer reviews the MR](../code_review.md). +- When you have resolved all of their feedback and the MR has been approved, the MR is ready for merge. + +If you need help at any point in the process, type `@gitlab-bot help` in a comment or initiate a +[mentor session](https://about.gitlab.com/community/contribute/mentor-sessions/) on [Discord](https://discord.gg/gitlab). -Congratulations on submitting your request, and thank you for your contribution! +When the merge request is merged, your change becomes part of the GitLab codebase. +Great job! Thank you for your contribution! |