GitHub flow - imkarin/bloktech GitHub Wiki
The GitHub flow
What is a branch-based workflow?
When you're working on a project, you might have a bunch of new ideas or teammates with suggestions. To avoid your workflow from becoming chaotic and messy, branching can help you manage this.
Projects have a master branch, the main work environment, from which other branches can be created. By creating a branch, you're creating an environment where you can try out new things. Changes made here won't affect the master branch. You can safely commit changes here: the branch won't be merged automatically.
What is a pull-request?
When you're ready for someone to review your work, you can open a pull request. Once you do, anyone can see what changes would be merged if they accept the request. This way you can share ideas, receive feedback or ask for help.
Once the pull request is opened, discussion starts and the person reviewing your changes might have some suggestions before deploying (final test) and merging.
What is merging?
When all changes have been verified, you can merge your code into the master branch. Your pull request will preserve a record of the historical changes to your code, so that anyone can go back and see why certain decisions were made.
What's the point of forking a project?
By creating a fork, you produce a personal copy of someone else's project. This is useful if you wanna contribute to someone's project, or if you want to use their project as the base of your own.
Source:
- Understanding the GitHub flow (13/3/2020)