Skip to content

Commit f00bfd9

Browse files
author
deadwood
committed
Update contributing guideline
Explain when to use PR and when to use direct push to master.
1 parent 06c5f66 commit f00bfd9

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

CONTRIBUTING.md

+12-10
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,28 @@
11
## Contributing to this repository
22

3-
The master branch (representing Core targets) is periodically refreshed from main AROS repository. This means the more the master branch diverges, the more costly it is to bring back changes from main AROS repository. The divergence is unavoidable, however rules are set in place to keep it under control over time. Additionally rules are introduced to manage cooperation of different projects on repository itself.
3+
**VERSION: 1.3**
4+
5+
### General Considerations
46

5-
**VERSION: 1.2**
7+
The master branch (representing Core targets) is periodically refreshed from main AROS repository. This means the more the master branch diverges, the more costly it is to bring back changes from main AROS repository. The divergence is unavoidable, however rules are set in place to keep it under control over time. Additionally rules are introduced to manage cooperation of different projects on repository itself.
68

79
### Rules
810

911
#### Repository structure
1012

11-
* **Do not delete/move/rename directories without a very good reason.** Doing so, mostly for "clean up" purposes, really brings high value, but always causes conflicts when applying patches. Always check with master branch maintainer before doing so.
12-
13-
* **Avoid deleting/moving/renaming files.** This again causes patch conflicts so be sure to have a good reason to do so. Resolving some compilation problems can be such reason, but "general cleaning up" should not be used as justification.
13+
* **Do not delete/move/rename files and directories without a very good reason.** Doing so always causes conflicts when applying patches from main AROS repo. Always check with master branch maintainer before doing such changes.
1414

1515
* **Consider creating pull requests to AROS repository (https://github.com/aros-development-team/) for changes committed to this repository.** This helps keep the divergence under control which is appreciated by master branch maintainer. This is not a hard requirement though.
1616

1717
* **Remember that there are alternatives based on master branch**. Alternatives will try to limit the divergence with master branch by committing as much code as possible to master. This however can give impression that there is unused code in master branch. Always check alternatives before making any actions on such code.
1818

19-
* **Do not use sub-modules and external repository linking.** Sub-modules causes problems with rebase flow and branch switching. The value they give is less than problems they create.
19+
* **Do not use sub-modules and external repository linking.** Sub-modules make rebase flow and branch switching a more complex and error-prone operation. If you need external codes in the repository, check how to proceed with master branch maintainer.
20+
21+
#### PRs / Commits / Pushes
2022

21-
#### Commits / Pushes
23+
* **PRs vs commit + push.** Changes to repository structure, ABI or public API or changes with far reaching effects (i.e. big update to frequently user library) go through PRs. All other can go through commit and push.
24+
25+
* **Describe 'why' along with 'what' in commit messages.** Describing the reason behing the change, the seen and expected behavior, the bug condition etc. is an immense help to person in future reviewing a change and trying to understand why it is necessary.
2226

2327
* **Do not push with force (-f, --force).** If git reports non forwardable changes, understand what caused this and fix the problem.
2428

@@ -28,13 +32,11 @@ The master branch (representing Core targets) is periodically refreshed from mai
2832

2933
* **Separate formatting changes.** If you are reformatting code, make it a separate commit so that formatting and actuall code changes are not mixed.
3034

31-
* **Describe 'why' along with 'what' in commit messages.** Describing the reason behing the change, the seen and expected behavior, the bug condition etc. is an immense help to person in future reviewing a change and trying to understand why it is necessary.
32-
3335
#### Code format
3436

3537
* **Use 4 spaces for indentation instead of tab.** Different editors interpret tab differently which over time causes the code to become unreadable when multiple people work on it, each with different tab settings.
3638

37-
* **Use \r\n line ending and ISO-8859-15 file encoding.** Having same settings across different developers avoid unnecessary re-formating changes.
39+
* **Use ISO-8859-15 file encoding for source code.** Having same settings across different developers avoid unnecessary re-formating changes.
3840

3941
* **Limit line length to 120 characters for code and comments. Limit line length to 80 characters for autodocs.** While 80 characters limits is no longer needed in 2020s, we are keeping it for backward compatibility with autodocs format which can be displayed on older hardware (Amigas).
4042

0 commit comments

Comments
 (0)