Other answers gave some good points, but there is another big one: what if you publish the work in a central repository that others also refer to? Perhaps by clicking, perhaps by request, but the result is what you do. It actually helps to stick to a publishing convention only from your workshop.
As you said, you can think of the host as the "last known working version", but you can also think of it as "my last stable version." If this is the only one from which you publish, then you know that you can never do something crazy, but also that you can do these crazy things in any other industry. You have fluency to amend commits, distribute them, rebuild branches around, all of the ways that Git provides to correct the inevitable flaws that we make during development. And you never have to think: "Hmm, have I already done this job?" - You do not, since it is not yet at your workshop. You can also try something, coding-wise β hack, complete a partially finished job, move between ideas no matter what you like β and be sure that you will never accidentally show it to anyone else until say "I finished" and combine it into a master.
The key part here is the concept of publishing your work. If it was your own repository, if you understood that your main branch was broken in some way, this is just not convenient for you. But as soon as other people are involved, you too can communicate with them.
source share