Git

PATerminal puts Git where you need it: every pane shows the state of its own repository, and the Git window gives you a full client for commits, history, and branches. Everything runs through the git on your computer.

Written for PATerminal v1.8.3

Git in the pane bar

When a pane is inside a repository, its top bar shows the current branch, how many commits are ahead (↑) and behind (↓), and how many files have changed. Next to that:

Branch name
Opens the branch list: local branches first, then remote-only ones. Click a branch (or press Enter) to switch. Type a name that doesn't exist and press Enter to create the branch and switch to it. Branches checked out in another worktree are marked and can't be chosen.
Diff
Opens the uncommitted changes of this pane's folder, without opening the Git window.
Worktree
Creates a worktree for this repository. See Worktrees.
Commit
Opens the Git window's file status with the message box focused.
Fetch / Pull / Push
Pull is highlighted when there's something to pull. With no upstream, it pulls from the remote's default branch (e.g. origin/main); the tooltip names the source. Push appears when you have unpushed commits.

The Git window

Click Git in the toolbar or press Cmd/Ctrl+E to open the Git window for the focused terminal's repository. The toolbar badge shows how many files have changed. Close it with Esc, the × button, or Cmd/Ctrl+E again. Drag its edges to resize; double-click a handle to reset.

The left side switches between File status, History, Search, worktrees, issues, and pull requests, and lists Branches (grouped into folders by /), Remotes, and Tags. Click a ref to show its commit in History; double-click a branch to check it out.

Review and commit changes

  1. Open the Git window. It starts on File status, listing every uncommitted file with its status and line counts.
  2. Click a file to see its line-numbered diff. Untick files you don't want in this commit.
  3. Write a message in Commit message. Tick Push after commit to push right away.
  4. Press Commit or Cmd/Ctrl+Enter.

All changes opens the whole working-tree diff in a larger viewer. Long lines wrap there, and you can drag the file list's edge to widen it.

Browse history

History draws a commit graph across all local and remote branches and tags. Select a commit to see its files and patch underneath. Search filters by message, author, or hash.

Right-click a commit → Roll back to this commit... resets the branch to it. Later commits leave the current history and uncommitted changes to tracked files are discarded (untracked files stay), so you're asked to confirm first.

Pull, push, fetch, and stash

Pull
Choose which remote branch to pull into the current one, without switching branches.
Push
Pushes the current branch and sets its upstream on the first push.
Fetch
Fetches updates from all remotes.
Stash
Stashes the changes, including untracked files (git stash push -u).

When Git can't run

If your computer stops git from working, PATerminal says why and shows the one-line fix, with Type in terminal to insert it (you press Enter) or Copy. It recognizes an unaccepted Xcode license, missing Command Line Tools, Git not installed, a folder owned by another user (“dubious ownership”), and Windows long-path limits.

Still stuck?

Check the FAQ, or email us with your OS, PATerminal version, and what you tried. We reply to every message.