UNPKG

3.33 kBMarkdownView Raw
1# Contributing
2
3 - [Issues and Bugs](#issue)
4 - [Feature Requests](#feature)
5 - [Submission Guidelines](#submit)
6 - [Signing the CLA](#cla)
7
8## <a name="issue"></a> Found a Bug?
9If you find a bug in the source code, you can help us by
10[submitting an issue](#submit-issue) to our [GitHub Repository][github]. Even better, you can
11[submit a Pull Request](#submit-pr) with a fix.
12
13## <a name="feature"></a> Missing a Feature?
14You can *request* a new feature by [submitting an issue](#submit-issue) to our GitHub
15Repository. If you would like to *implement* a new feature, please submit an issue with
16a proposal for your work first, to be sure that we can use it.
17Please consider what kind of change it is:
18
19* For a **Major Feature**, first open an issue and outline your proposal so that it can be
20discussed. This will also allow us to better coordinate our efforts, prevent duplication of work,
21and help you to craft the change so that it is successfully accepted into the project.
22* **Small Features** can be crafted and directly [submitted as a Pull Request](#submit-pr).
23
24## <a name="submit"></a> Submission Guidelines
25
26### <a name="submit-pr"></a> Submitting a Pull Request (PR)
27Before you submit your Pull Request (PR) consider the following guidelines:
28
29* Search [GitHub](https://github.com/agneta/platform/pulls) for an open or closed PR
30 that relates to your submission. You don't want to duplicate effort.
31* Please sign our [Contributor License Agreement (CLA)](#cla) before sending PRs.
32 We cannot accept code without this.
33* Make your changes in a new git branch:
34
35 ```shell
36 git checkout -b my-fix-branch master
37 ```
38
39* Create your patch, **including appropriate test cases**.
40* Commit your changes using a descriptive commit message.
41
42 ```shell
43 git commit -a
44 ```
45 Note: the optional commit `-a` command line option will automatically "add" and "rm" edited files.
46
47* Push your branch to GitHub:
48
49 ```shell
50 git push origin my-fix-branch
51 ```
52
53* In GitHub, send a pull request to `agneta/platform:master`.
54* If we suggest changes then:
55 * Make the required updates.
56 * Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
57
58 ```shell
59 git rebase master -i
60 git push -f
61 ```
62
63That's it! Thank you for your contribution!
64
65#### After your pull request is merged
66
67After your pull request is merged, you can safely delete your branch and pull the changes
68from the main (upstream) repository:
69
70* Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
71
72 ```shell
73 git push origin --delete my-fix-branch
74 ```
75
76* Check out the master branch:
77
78 ```shell
79 git checkout master -f
80 ```
81
82* Delete the local branch:
83
84 ```shell
85 git branch -D my-fix-branch
86 ```
87
88* Update your master with the latest upstream version:
89
90 ```shell
91 git pull --ff upstream master
92 ```
93
94## <a name="cla"></a> Signing the CLA
95
96Please sign our Contributor License Agreement (CLA) before sending pull requests. For any code
97changes to be accepted, the CLA must be signed. It's a quick process, we promise!
98
99* For individuals we have a [simple click-through form][individual-cla].
100
101[github]: https://github.com/agneta/platform
102[individual-cla]: https://cla-assistant.io/agneta/platform