Push commits to a remote repository.

# To send local changes in the current branch to its remote counterpart:
git push

# To send local changes in a given branch to its remote counterpart:
git push <remote_name> <local_branch>

# To publish the current branch to a remote repository, setting the remote branch name:
git push <remote_name> -u <remote_branch>

# To send changes on all local branches to their counterparts in a given remote repository:
git push --all <remote_name>

# To delete a branch in a remote repository:
git push <remote_name> --delete <remote_branch>

# To remove remote branches that don't have a local counterpart:
git push --prune <remote_name>

# To publish tags that aren't yet in the remote repository:
git push --tags