Skip to content

Commit 4f0b8bc

Browse files
authored
Create CONTRIBUTING md
1 parent fa6c875 commit 4f0b8bc

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

CONTRIBUTING.md

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
## Contributing
2+
3+
1. Familiarize yourself with the codebase by reading the [wiki](wiki).
4+
1. Create a new issue before starting your project so that we can keep track of
5+
what you are trying to add/fix. That way, we can also offer suggestions or
6+
let you know if there is already an effort in progress.
7+
1. Fork this repository.
8+
1. The [README](README.md) has details on how to set up your environment.
9+
1. Create a _topic_ branch in your fork based on the correct branch (usually the **develop** branch, see [Branches section](#branches) below). Note, this step is recommended but technically not required if contributing using a fork.
10+
1. Edit the code in your fork.
11+
1. Sign CLA (see [CLA](#cla) below)
12+
1. Send us a pull request when you are done. We'll review your code, suggest any
13+
needed changes, and merge it in.
14+
15+
### CLA
16+
17+
External contributors will be required to sign a Contributor's License
18+
Agreement. You can do so by going to https://cla.salesforce.com/sign-cla.
19+
20+
## Branches
21+
22+
- We work in `develop`.
23+
- Our released (aka. _production_) branch is `master`.
24+
- Our work happens in _topic_ branches (feature and/or bug-fix).
25+
- feature as well as bug-fix branches are based on `develop`
26+
- branches _should_ be kept up-to-date using `rebase`
27+
- see below for further merge instructions
28+
29+
### Merging between branches
30+
31+
- We try to limit merge commits as much as possible.
32+
33+
- They are usually only ok when done by our release automation.
34+
35+
- _Topic_ branches are:
36+
37+
1. based on `develop` and will be
38+
1. squash-merged into `develop`.
39+
40+
- Hot-fix branches are an exception.
41+
- Instead we aim for faster cycles and a generally stable `develop` branch.
42+
43+
### Merging `develop` into `master`
44+
45+
- When a development cycle finishes, the content of the `develop` branch will become the `master` branch
46+
47+
```
48+
$ git checkout master
49+
$ git reset --hard develop
50+
$
51+
$ # Using a custom commit message for the merge below
52+
$ git merge -m 'Merge -s our (where _ours_ is develop) releasing stream x.y.z.' -s ours origin/master
53+
$ git push origin master
54+
```
55+
56+
## Pull Requests
57+
58+
- Develop features and bug fixes in _topic_ branches.
59+
- _Topic_ branches can live in forks (external contributors) or within this repository (committers).
60+
\*\* When creating _topic_ branches in this repository please prefix with `<developer-name>/`.
61+
62+
### Merging Pull Requests
63+
64+
- Pull request merging is restricted to squash & merge only.

0 commit comments

Comments
 (0)