As an individual developer, I’ve been using GitHub — to quote a Software Engineering post — “very simplistically: no branches and basically just using the commits as a backup to my local files.” Following that path, the plan today was to commit completed Chess Opponent throttling control code with a hardcoded throttle value, to replace the hardcoded value with one or more options to set the throttle value, and then to commit that as well. The separate commits were to make rolling back to the working hardcoded version if I mucked things up with the options.
I realized, though, that it’s probably not best to continue that way, committing features to the main line of the code in a piecemeal manner with other little tweaks and bug fixes sprinkled through to confuse things further, and I finally got fed up with having everything in such a disordered state. So instead, of committing anything right now, I’ve decided to take a few days and try to establish a reasonable workflow to make things clearer and more organized from this point on.
While poking around for info on GitHub-applicable workflows, I’ve collected a few items to mull over that might be of interest to others:
- The Software Engineering post noted above, along with answers and comments responding thereto
- A Git Workflow for Solo Projects
- A successful Git branching model, referred to in both preceding items
- GitHub flow
The plan now is to get a workflow established in short order and get on with development in a more organized manner going forward. Should be easy, right?