# git > Distributed version control system. > Some subcommands such as `commit`, `add`, `branch`, `switch`, `push`, etc. have their own usage documentation. > More information: . - Create an empty Git repository: `git init` - Clone a remote Git repository from the internet: `git clone {{https://example.com/repo.git}}` - View the status of the local repository: `git status` - Stage all changes for a commit: `git add {{[-A|--all]}}` - Commit changes to version history: `git commit {{[-m|--message]}} {{message_text}}` - Push local commits to a remote repository: `git push` - Pull any changes made to a remote: `git pull` - Reset everything the way it was in the latest commit: `git reset --hard; git clean {{[-f|--force]}}`