Skip to main content

Branch and remotes

Fetch, pull, push, and branch switch for the workspace you have open. Desktop and Mobile both put those controls on the Git tab.

Where it differs

Desktop

Branch switching lives at the top of the Git tab. A dropdown shows the live branch, grouped local and remote-tracking branches, and ahead/behind counts against the upstream. Fetch, Pull, Push, and History sit under that dropdown. Discard appears next to Push only when files are selected. History is an inner page. Force push (--force-with-lease) is offered in the Push confirmation only after a normal push is rejected.

Mobile

Those same controls sit on the Git tab. Fetch, Pull, Push, branch switch, remote checkout, and create-branch each ask for a confirmation that names the operation and the branch or remote. The branch list shows at most five rows at a time and can be filtered. Reload sits to the left of Fetch. A History button sits next to Push. Discard appears next to Push only when files are selected. Force push (--force-with-lease) appears only when a normal push is rejected.
  1. Switch

    Choosing a local branch switches to it. Choosing a remote-tracking branch checks it out and creates a local tracking branch when needed.

  2. Create

    A + control opens a field to create a branch from the current HEAD.

  3. Fetch, Pull, Push

    Force push is a confirmed --force-with-lease action, not an unconditional overwrite. Desktop and Mobile offer it only after a rejected push, not as a toolbar button. Pull defaults to fast-forward only; if the histories have diverged, Agent-Up reports that instead of Git's raw abort text.

Switching refuses to run when Git itself would refuse, such as when the worktree has conflicting changes.