Skip to content

Commit 69df6ea

Browse files
author
José Valim
committed
Merge pull request #1120 from alco/contributing-guidelines
Contributing guidelines
2 parents fefad03 + b1fa7d1 commit 69df6ea

File tree

1 file changed

+27
-12
lines changed

1 file changed

+27
-12
lines changed

CONTRIBUTING.md

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,8 @@ Good pull requests - patches, improvements, new features - are a fantastic
9595
help. They should remain focused in scope and avoid containing unrelated
9696
commits.
9797

98-
**IMPORTANT**: By submitting a patch, you agree to allow the project owner to
99-
license your work under the same license as that used by the project.
98+
**IMPORTANT**: By submitting a patch, you agree that your work will be made
99+
public forever and will be licensed under the license used by the project.
100100

101101
If you have any significant pull request in mind (e.g. implementing features,
102102
refactoring code, porting to a different language), **please ask first**
@@ -123,11 +123,16 @@ in order to craft an excellent pull request:
123123
2. If you cloned a while ago, get the latest changes from upstream:
124124

125125
```bash
126-
git checkout <dev-branch>
127-
git pull upstream <dev-branch>
126+
git checkout master
127+
git pull upstream master
128128
```
129129

130-
3. Create a new topic branch (off master) to contain your feature, change, or fix:
130+
3. Create a new topic branch (off of `master`) to contain your feature, change,
131+
or fix.
132+
133+
**IMPORTANT**: Making changes in `master` is discouraged. You should always
134+
keep your local `master` in sync with upstream `master` and make your
135+
changes in topic branches.
131136

132137
```bash
133138
git checkout -b <topic-branch-name>
@@ -139,25 +144,35 @@ in order to craft an excellent pull request:
139144
[interactive rebase](https://help.github.com/articles/interactive-rebase)
140145
feature to tidy up your commits before making them public.
141146

142-
5. Locally merge (or rebase) the upstream development branch into your topic branch:
147+
5. Push your topic branch up to your fork:
143148

144149
```bash
145-
git pull [--rebase] upstream <dev-branch>
150+
git push origin <topic-branch-name>
146151
```
147152

148-
6. Push your topic branch up to your fork:
153+
6. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
154+
with a clear title and description.
155+
156+
7. If you haven't updated your pull request for a while, you should consider
157+
rebasing on master and resolving any conflicts.
158+
159+
**IMPORTANT**: _Never ever_ merge upstream `master` into your branches. You
160+
should always `git rebase` on `master` to bring your changes up to date when
161+
necessary.
149162

150163
```bash
151-
git push origin <topic-branch-name>
164+
git checkout master
165+
git pull upstream master
166+
git checkout <your-topic-branch>
167+
git rebase master
152168
```
153169

154-
7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
155-
with a clear title and description.
156-
157170
We have saved some excellent pull requests we have received in the past in case
158171
you are looking for some examples:
159172

160173
* https://github.com/elixir-lang/elixir/pull/992
161174
* https://github.com/elixir-lang/elixir/pull/1041
162175
* https://github.com/elixir-lang/elixir/pull/1058
163176
* https://github.com/elixir-lang/elixir/pull/1059
177+
178+
Thank you for your contributions!

0 commit comments

Comments
 (0)