A Git Workflow is a recommendation for how to use Git to accomplish best from it.
More consistent, productive work for developers.
More effective work inside of the team.
A more flexible way to manage code changes.
There is no silver bullet for how to work with Git.
No standards.
When a team has a coding workflow, it's important to understand the logic of how changes should be applied to the codebase.
There a few worldwide used popular Git workflows.
We’ll be discussing them during this course.
Why Care about Git workflow you can ask me.
It's actually better to start to care about before things get painful :)
Case1: You are trying to manage the integrity of a codebase that has numerous developers jumping in and out. And you get a conflicting release schedule.
Case2: When you get tired of wondering why features are disappearing before deployment.
Case3: When you don’t have time to dig through the commit diffs of 500 commits to find out why a push from a specific person causes major unintended changes to your project.
Case4: When a feature that’s not ready for release sneaks its way into production and the whole project can be broken.
Case5: When you can’t have a conversation, explaining to clients/team leader (again) that you can’t release feature X because feature Y has not yet cleared QA.
I hope you see, there a lot of things can be avoided by applying a clean workflow.
When you choose a git workflow for your project, you should have an answer for 5 major questions:
1. How much visibility do you need?
2. How much flexibility do you need?
3. Is collaboration important to your workflow?
4. How much control do you need?
5. How important is ease of use to you?
I'm sure that during the course you'll get a better understanding of what type of workflow should be incorporated.