Dev contribution using GitHub

Austin Soplata edited this page Apr 16, 2018 · 7 revisions

"Fork-and-Pull" Model

Branches

  • master is the "production-ready" branch for the public. Do not commit to it; let the maintainers control it.
  • debug is the working branch for debugging monthly feature updates. Commit hotfixes and bug fixes to debug.
  • dev is the working branch for ALL other changes! New features should be merged from separate issue branches in your fork into dev branch. In other words, 99% of your work should be going onto the dev branch.
  • Branches should be merged monthly according to this algorithm.
  • Do NOT push your own personal branches for "production"-stable branches. If you need stability, use either debug or master.

Further Explanation of Committing Guidelines

  • Your code contributions should be done this way:

    1. Make an issue for the feature you want to add.
    2. Make a feature-specific feature branch on your personal fork.
    3. Code up your changes in commits on that fork.
    4. Only when that feature is complete and tested do you make a Pull Request onto upstream/dev.
    5. If the feature is small and does NOT change the behavior of pre-existing code, go ahead and merge the PR or merge to dev directly.
    6. If the feature is even moderately-sized, ask someone for at least a preliminary code review before merging the Pull Request; in this case, at minimum make a PR.
  • The only exceptions to this should be very minor bugfixes/"hotfixes" on debug or extremely trivial changes on dev or debug, like comment changes or single-line changes. NEVER change master.

  • If fixing a bug takes more than a couple of lines, then make an issue out of it and treat it like you would a full feature, the only difference being you should base your bugfix on debug and commit the changes back to debug.

You can’t perform that action at this time.
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.
Press h to open a hovercard with more details.