here is a git workflow diagram that matches my own experience well