I have a document describing git best practices, which covers this very issue. However, as a précis, Commit Often, Perfect Later, Publish Once.