Explain the differences among github fork, git clone, and git branch:
A fork creates a new repository under your account that's identical to an existing one. It can interact and commit changes to the the original through pull requests.
Cloning copies a repository to a local filesystem, and branching copies an editable section of a repository to a local filesystem, and can be merged into the main repo.