Follow these principles to help guide your design choices.
Encourage using git sucessfully so that users can better communicate the work they've done to their teams and for their own records. For example, we encourage well written commit messages by making partial committing easy.
Consider what the UI explicitly shows the user and what is hidden behind controls and feels like "magic". It's important to achieve a good balance between these two paradigms, so that users can understand what is happening and troubleshoot when necessary.
Always consider the needs of, and optimize for, beginner developers in favor of advanced developers.
Use git terminology and add clarifying information and hints throughout to help users understand just enough of what’s going on behind the scenes. When git language is used accurately, users can more easily troubleshoot and learn concepts quickly.
Always make it clear what the next step is after any given action. This helps beginner develolpers to learn common workflows.
You can read more about how GitHub Desktop makes product decisions in the "What is GitHub Desktop and who is it for?" document.