diiq / atomatigit

Atom-ati-Git. Git intergration for Atom.io, in the style of Magit. UNMAINTAINED. SEEKING NEW MAINTAINER.
MIT License
151 stars 20 forks source link

STILL SEEKING NEW MAINTAINER!

Folks continue to star and fork this repo, for which I am very glad. I no longer use atom, nor atomatigit, so I'd love to pass the reins on to someone whos wants to keep things rolling. Drop me a note!

atomatigit

Real git integration for the Atom text editor.

Atomatigit allows you to see diffs, stage chunks, make commits, push, fetch, change branches, delete branches, discard changes... and if there's any function you're missing, you can also execute raw git commands.

Atomatigit is designed to be used using ultra-fast keyboard shortcuts. Press cmd-alt-g to show the atomatigit pane on the right. From there, you can right-click on a file, branch, or commit to see your options, and to get a friendly reminder of the keyboard shortcuts. Once you know the shortcuts, you can navigate through 100% of atomatigit's functions without a mouse.

Atomatigit is inspired by the magit emacs package.

screenshot: file list screenshot: dark theme; branch list; context menu

Installing

Using apm:

  apm install atomatigit

Making changes and staging files

Press cmd-alt-g to show the atomatigit pane on the right.

As soon as you save a file, it will show up in the list of unstaged changes. Navigate to it using arrow keys, i/k, or by clicking on it. Hit tab to see the diff, and use shift-s to stage it.

Committing

Once you've staged some files, initiate a commit by hitting c. A new buffer will open for you to enter a commit message. When you're done describing your changes, cmd-alt-c will complete the commit.

Other Key bindings

There are many, but don't worry: if you ever forget these, Atomatigit has right-click menus to help remind you. Here's the complete list:

Staging View

Branch View

Commit Log

Current status

Atomatigit is usable, but still in active development. Feel free to make feature requests.

Missing features (coming soon)

You cannot merge, ammend, or rebase through the UI (though you can perform the commands using atomatigit:git-command).

Moved and deleted files have bad interactions (in terms of toggle-diff, etc).

The method for staging individual patches isn't the best interface.

Contributing

Contributions are welcome!

apm develop atomatigit

Will clone the repo for you.

The code should be quite clear. If you add new files, don't forget to add them to the correct index.coffee so they can be required from other directories.

Pull requests that break specs won't be merged, so be sure to run apm test before you PR.

Pull requests that spec all their new public methods will get more attention than those that don't :)

Contributors