You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Now we are three coders and four collaborators, so basic rules are required for coordination. I propose the following:
General
Nobody pushes directly to the master/development branch. All changes have to be reviewed by at least one developer - this will be done via pull requests. The PR then will be merged with the development branch. An exception are small modifications of the readme and changelog file.
The master branch won't be modified directly. It only contains code for the current released version. If we decide to release a new version, we'll merge the development branch with the master branch.
The branch development only contains code for the next planned version.
Give your commits meaningful messages/descriptions, so that everyone knows what was done by just reading the commit message. This applies for commits in PRs too.
If your changes are relevant for the server owners, include them into the changelog with the relevant commit
Issues and Milestones
We really should use milestones and issues. So everything that has to be worked on should be an issue. The issue then will be assigned to a milestone. Milestones represent versions we plann to release. Issues should cover a small unit of work - not huge tasks.
If one developer is assigned to an issue, it's the task of this person to work on the issue. No other developer should work on it simultaneously (collusions are possible of course).
Developers can assign themself or other developers to currently unassigned issues.
I've created a ton of labels. Use them. They make management a lot easier.
Pull Requests
A PR should cover one specific feature.
Nobody merges his/her own PR's without at least one review from another developer. For larger features, all developers should agree. To approve a PR, click review in the tab files changed and select approve changes. Only merge a PR if all developers involved accepted it.
If a PR conflicts with the target branch, the conflicts have to be resolved by the author.
A PR marked with needs testing or incompletemust not be merged until someone tested it or it was completed!
When merging the PR, squash all commits of the PR into one when merging. Include a meaningful commit description.
The person assigned to the PR will actually merge it. Nobody else does.
As with issues, try to label your PRs.
Releases
Full releases will be tagged via Github releases. The release includes the .jar of the released version.
Pre-releases will be uploaded to the branch development but removed with the full release.
Features
Only remove or rename commands if absolutely necessary - for compatibility reasons. This is because of the Forge Essentials permission nodes which are derived from the command names.
Now we are three coders and four collaborators, so basic rules are required for coordination. I propose the following:
General
master
/development
branch. All changes have to be reviewed by at least one developer - this will be done via pull requests. The PR then will be merged with thedevelopment
branch. An exception are small modifications of thereadme
andchangelog
file.master
branch won't be modified directly. It only contains code for the current released version. If we decide to release a new version, we'll merge thedevelopment
branch with themaster
branch.development
only contains code for the next planned version.Issues and Milestones
Pull Requests
review
in the tabfiles changed
and selectapprove changes
. Only merge a PR if all developers involved accepted it.needs testing
orincomplete
must not be merged until someone tested it or it was completed!Releases
development
but removed with the full release.Features
With developer I mean every collaborator (@VulcanForge @AlteOgre @mahtaran @CraftedMods)
The text was updated successfully, but these errors were encountered: