Difference between revisions of "Magit"

From WikEmacs
Jump to: navigation, search
(Change magit diff colors)
(Basic setup)
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
|name=Magit
 
|name=Magit
 
|description=Git integration for Emacs
 
|description=Git integration for Emacs
|author=Phil Jackson
+
|author=Marius Vollmer
|maintainer=Phil Jackson
+
|maintainer=Jonas Bernoulli
 
|source=https://github.com/magit/magit
 
|source=https://github.com/magit/magit
 
}}
 
}}
Line 11: Line 11:
 
== Basic setup ==
 
== Basic setup ==
  
 +
Install Magit from MELPA:
 +
 +
    package-install RET magit RET
 +
 +
And require it in your dotfile:
 
<source lang="lisp">
 
<source lang="lisp">
(add-to-list 'load-path "/path/to/magit/directory")
 
 
(require 'magit)
 
(require 'magit)
 
</source>
 
</source>
Line 30: Line 34:
  
 
  (eval-after-load 'magit
 
  (eval-after-load 'magit
    '(progn
+
  '(progn
    (set-face-foreground 'magit-diff-add "green3")
+
      (set-face-foreground 'magit-diff-add "green3")
    (set-face-foreground 'magit-diff-del "red3")
+
      (set-face-foreground 'magit-diff-del "red3")
    (when (not window-system)
+
      (unless window-system
      (set-face-background 'magit-item-highlight "black"))))
+
        (set-face-background 'magit-item-highlight "black"))))
  
 
=== Use ido to checkout branches ===
 
=== Use ido to checkout branches ===
  
 
  (setq magit-completing-read-function 'magit-ido-completing-read)
 
  (setq magit-completing-read-function 'magit-ido-completing-read)
 +
 +
== Extensions ==
 +
 +
=== magit-filenotify: refresh status buffer when git tree changes ===
 +
 +
This module, to be installed with [[ELPA]], comes with a minor mode '''magit-filenotify''' which tracks
 +
changes in the source tree using '''file-notify''' and refreshes the magit
 +
status buffer.  Emacs 24.4 with `file-notify-support' is required for it to
 +
work.
 +
 +
home and documentation: https://github.com/magit/magit-filenotify
 +
  
 
== See Also ==
 
== See Also ==
Line 44: Line 60:
 
* [[Version Control]]
 
* [[Version Control]]
 
* [[Git]]
 
* [[Git]]
* [[MagitHub]]
 
  
 
== Project Pages ==
 
== Project Pages ==

Latest revision as of 11:30, 25 November 2014

Magit
Description Git integration for Emacs
Author Marius Vollmer
Maintainer Jonas Bernoulli
Source https://github.com/magit/magit

Magit is an Emacs mode for working with Git repositories. It provides a convenient interface for the most common Git operations.

Basic setup[edit]

Install Magit from MELPA:

   package-install RET magit RET

And require it in your dotfile:

(require 'magit)

Helpful keybindings[edit]

  • M-x magit-status is the main entry point to Magit. The author recommends binding this command to "a key of your choice". [C-x g] is a common choice:
(global-set-key (kbd "C-x g") 'magit-status)

The official Magit documentation is excellent and should be consulted for further information.

Common Customization[edit]

Change magit diff colors[edit]

If you want more common colors (green and red), instead of psyche highlighting:

(eval-after-load 'magit
  '(progn
     (set-face-foreground 'magit-diff-add "green3")
     (set-face-foreground 'magit-diff-del "red3")
     (unless window-system
       (set-face-background 'magit-item-highlight "black"))))

Use ido to checkout branches[edit]

(setq magit-completing-read-function 'magit-ido-completing-read)

Extensions[edit]

magit-filenotify: refresh status buffer when git tree changes[edit]

This module, to be installed with ELPA, comes with a minor mode magit-filenotify which tracks changes in the source tree using file-notify and refreshes the magit status buffer. Emacs 24.4 with `file-notify-support' is required for it to work.

home and documentation: https://github.com/magit/magit-filenotify


See Also[edit]

Project Pages[edit]