Remote Operations

Remote Operations

Push a new branch and set up tracking

$ git push -u origin feature/name

Pull with rebase (avoid merge commits)

$ git pull --rebase origin main

Fix a rejected push

$ git pull origin main              # fetch + merge
$ git push origin main              # retry

Force push safely (after rebase)

$ git push --force-with-lease origin feature/name

Never use --force on shared branches.

Sync a fork with upstream

$ git fetch upstream
$ git switch main
$ git merge upstream/main
$ git push origin main

Fetch and inspect before merging

$ git fetch origin
$ git log main..origin/main --oneline    # what's new on remote
$ git diff main origin/main              # line-by-line changes
$ git merge origin/main                  # integrate when ready
On this page