Project

General

Profile

PRs MRs on CiviCRM » History » Version 1

Brienne Kordis, 09/27/2022 06:24 PM

1 1 Brienne Kordis
# PRs/MRs on CiviCRM
2
3
PR stands for "pull request" while MR means "merge request".
4
5
### Basic PR Process
6
1. Fork the repository in question (usually either on GitHub or GitLab)
7
1. Clone the repo by copying the ssh key from the repo and running the `git clone (*ssh key*)` on the command line
8
1. Add a remote repo with `git remote add (*name of remote*) (*branch name*)`
9
1. Push the remote repo with `git push (*name of remote*) (*branch name*)`
10
1. Add changed files (`git add (*name of files*)`
11
1. Commit staged files (`git commit -m ""`) with a message to describe the commit within the quotes
12
1. Push the committed files (`git push`)
13
1. click on the link the is provided in the terminal
14
1. fill out the info to on the browser page to make the PR
15
16
### Cherry-picked PR
17
Use this when you want to *cherry-pick* a specific commit for a PR
18
1. `git branch`
19
1. `git checkout (*name of branch with desired commit*)`
20
1. `git log`
21
1. copy the commit id of the desired commit
22
1. `git branch`
23
1. `git checkout master`
24
1. `git checkout -b (*new branch name*)`
25
1. `git cherry-pick (*commit id*)`
26
1. `git log`
27
1. `git push (*name of remote*) (*new branch name*)
28
1. click on the link the is provided in the terminal
29
1. fill out the info to on the browser page to make the PR
30
31
### PRs on CiviCRM Release Canidates (RC)
32
1. `git check out (*name of RC branch*)`
33
1. `git check out (*the new branch that you made edits in*)`
34
1. `git add` the changed files
35
1. `git push` branch to upstream
36
1. open the link that shows in the terminal after the last command is run to create a pull request
37
1. change the ***base*** of the repo you are merging into to be release candidate for CiviCRM
38