git-panel
A Git integration panel
asiloisad 6 0 1.1.0 MIT GitHub
  • Made for Pulsar!

    This package was written specifically for Pulsar and did not exist in the Atom package repository.

git-panel

A Git integration panel.

Fork of github, but forge-agnostic Git operations only.

Features

  • Staging area: Stage, unstage, and discard changes per-file or per-hunk.
  • Commit: Compose commit messages with co-author support and automatic message wrapping.
  • Branching: Create, switch, and manage branches from the status bar.
  • Push / Pull / Fetch: Sync with remotes directly from the status bar.
  • Diff viewer: Inline diff view with hunk and line-level selection, including word-level highlights within changed lines.
  • Merge conflict resolution: Graphical in-editor conflict resolution controls.
  • Clone / Init: Initialize new repositories or clone from a URL.
  • Multi-repo support: Scan project subdirectories for nested git repositories.

Installation

To install, search for git-panel in the Install pane of the Pulsar settings or run ppm install git-panel. Alternatively, run ppm install asiloisad/pulsar-git-panel to install directly from the GitHub repository.

Note: This package automatically disables the built-in github package to avoid conflicts.

Commands

Commands available in .workspace:

  • git-panel:toggle-git-tab-focus: Ctrl+9 toggle and focus the Git tab,
  • git-panel:toggle-git-tab: Ctrl+Shift+9 toggle Git tab visibility,
  • git-panel:commit: Alt+G Enter commit staged changes,
  • git-panel:fetch: Alt+G F fetch from remote,
  • git-panel:pull: Alt+G Shift+F pull from remote,
  • git-panel:push: Alt+G P push to remote,
  • git-panel:force-push: Alt+G Shift+P force push to remote,
  • git-panel:clone: Alt+G = open clone dialog,
  • git-panel:initialize: initialize a new git repository,
  • git-panel:open-commit: Alt+G O open commit by SHA dialog,
  • git-panel:toggle-commit-preview: Alt+G V toggle commit preview pane,
  • git-panel:view-unstaged-changes-for-current-file: show unstaged diff for current file,
  • git-panel:view-staged-changes-for-current-file: show staged diff for current file,
  • git-panel:close-all-diff-views: close all open diff views,
  • git-panel:close-empty-diff-views: close empty diff views.

Commands available in atom-text-editor (conflict resolution):

  • git-panel:resolve-as-ours: Alt+M 1 resolve conflict as ours,
  • git-panel:resolve-as-theirs: Alt+M 2 resolve conflict as theirs,
  • git-panel:resolve-as-base: Alt+M 3 resolve conflict as base,
  • git-panel:resolve-as-current: Alt+M Enter resolve as current side,
  • git-panel:revert-current: Alt+M R revert conflict marker,
  • git-panel:resolve-as-ours-then-theirs: resolve as ours then theirs,
  • git-panel:resolve-as-theirs-then-ours: resolve as theirs then ours,
  • git-panel:revert-conflict-modifications: revert all conflict modifications,
  • git-panel:dismiss-conflict: dismiss current conflict.

Commands available in .git-panel-StagingView:

  • git-panel:jump-to-file: O open file in editor,
  • git-panel:discard-changes-in-selected-files: Ctrl+Backspace discard changes in selected files,
  • git-panel:show-diff-view: show diff for selected file,
  • git-panel:activate-next-list: move focus to next file list,
  • git-panel:activate-previous-list: move focus to previous file list,
  • git-panel:resolve-file-as-ours: resolve selected file as ours,
  • git-panel:resolve-file-as-theirs: resolve selected file as theirs,
  • git-panel:stage-all-changes: Alt+G A stage all unstaged changes,
  • git-panel:unstage-all-changes: Alt+G Shift+A unstage all staged changes,
  • git-panel:discard-all-changes: discard all unstaged changes,
  • git-panel:undo-last-discard-in-git-tab: undo last discard.

Commands available in .git-panel-CommitView:

  • git-panel:commit: Ctrl+Enter commit staged changes,
  • git-panel:amend-last-commit: Alt+G Shift+Enter amend the last commit,
  • git-panel:toggle-expanded-commit-message-editor: toggle expanded editor,
  • git-panel:dive: Left open commit preview,
  • git-panel:co-author-exclude: Shift+Backspace exclude co-author from list.

Commands available in .git-panel-RecentCommits:

  • git-panel:dive: Enter open commit detail view,
  • git-panel:copy-commit-sha: copy commit SHA to clipboard,
  • git-panel:copy-commit-subject: copy commit subject to clipboard.

Commands available in .git-panel-FilePatchView (diff view):

  • git-panel:toggle-patch-selection-mode: / or Ctrl+/ toggle hunk/line selection mode,
  • git-panel:discard-selected-lines: Backspace or Ctrl+Backspace discard selected lines,
  • git-panel:jump-to-file: O or Ctrl+O jump to file at selected line,
  • git-panel:surface: Right or Ctrl+Right navigate back to parent view,
  • git-panel:select-next-hunk: Down select next hunk (in hunk mode),
  • git-panel:select-previous-hunk: Up select previous hunk (in hunk mode).

Contributing

Got ideas to make this package better, found a bug, or want to help add new features? Just drop your thoughts on GitHub. Any feedback is welcome!