Skip to main content

Branch

Cmd+Shift+B creates a new branch from the current HEAD. Switch branches from the sidebar or via Quick Search (Cmd+Shift+F).

Merge

Drag a branch onto the current branch to merge it. Alternatively use Cmd+Shift+M to open the merge flow directly.

Find and clean up merged branches

Commit+ Pro can identify local branches whose current tip was included in a merged GitHub pull request or GitLab merge request. Connect the matching provider account, then open a repository: confirmed branches receive a Merged pill in the sidebar. Control-click a local branch and open Merge Status to:
  • Review Merge Evidence… and open the pull request or merge request that proves the branch tip was merged.
  • Refresh Merge Status after remote activity changes.
  • Delete Fully Merged Branches… to review all eligible merged branches before removing them.
Commit+ excludes the current branch and protected main, master, develop, and configured Git Flow branches. Before deletion, it checks the provider evidence again and confirms that each branch still points to the reviewed commit. If the branch changed, is protected or in use, or the evidence is no longer available, deletion stops for that branch and continues with the remaining branches. Failures identify the affected branches. Remote deletions finish in Background Activity. The status is checked when you open the repository and after a manual fetch or merge-status refresh. To hide the pills for one repository without changing the provider connection, open Repository Settings → Advanced and turn off Show merged branch hints.
Merge detection needs a connected GitHub or GitLab account and provider evidence for the exact branch tip. Git ancestry alone is not treated as proof that a branch was merged.

Rebase

Hold ⌥ while dragging a branch onto the current branch to rebase onto it instead of merging.

Interactive rebase

In History, right-click a commit and choose Interactively Rebase ‘your-branch’ to Here…. For an ancestor on the current branch, the sheet lists commits after that base. A commit outside the current branch can be used as the new destination when a common base exists.
  1. Review the commits in application order, from top to bottom.
  2. Use Move Earlier and Move Later to reorder them.
  3. Choose an action for each commit: Pick, Reword Message, Edit, Squash into Parent, Fixup into Parent, or Drop.
  4. Enter replacement messages for Reword, or an optional combined message for Squash. Select a row to review its Commit details or Changes.
  5. Click Rebase to apply the plan.
Squash combines changes and messages with the preceding kept commit; Fixup discards the selected commit’s message. Drop removes the commit and its changes. Edit pauses so you can change files, stage and amend in File Status, then continue. Eligible commits on the current branch also expose Reword, Edit, Squash, Fixup, and Drop in their row action menu. Squash and Fixup need a parent and can use a merge commit as the immediate parent. Other ranges containing merge commits are unsupported. Check out a branch and commit or stash local changes before starting. When a rebase pauses, resolve conflicts and stage the result in File Status, then choose Continue, Skip, or Abort. Skip omits the paused commit; Abort cancels the rebase.
Rewriting history changes commit hashes, including published commits. Publishing the rewritten branch may require a force push. Remote status reflects the last fetch.

Cleanup reminders

Open the notification bell in the repository window or the Commit+ notification menu in the macOS menu bar. Use the source picker to select App notifications. This view includes release notes and merged-branch cleanup reminders, separate from GitHub notifications. With Commit+ Pro and a connected provider account, after merged-branch detection is ready, Commit+ checks for cleanup candidates once per repository per day. A reminder opens the repository and its cleanup review; candidates are checked again before deletion. Reminders are stored locally. New reminders also appear as macOS notifications; click one to open its reminder. In Settings → Notifications, turn off New app notifications to stop these banners, or turn on Only when Commit+ is in the background to skip banners while Commit+ is the active app. Reminders always remain in the notification menu.