Support creating the branch. Unified branch state into a single data type. Only commit changes when the index has been changed.