-;; *the* right way to do git
-(with-eval-after-load 'magit
- (declare-function magit-add-section-hook "magit-section"
- (hook function &optional at append local))
- (magit-add-section-hook 'magit-status-sections-hook
- 'magit-insert-modules
- 'magit-insert-stashes
- 'append)
- ;; (magit-add-section-hook 'magit-status-sections-hook
- ;; 'magit-insert-ignored-files
- ;; 'magit-insert-untracked-files
- ;; 'append)
- (declare-function magit-display-buffer-fullframe-status-v1
- "magit-mode" (buffer))
- (csetq
- magit-diff-refine-hunk t
- magit-repository-directories '(("~/.emacs.d/" . 0)
- ("~/src/git/" . 2))
- ;; magit-completing-read-function 'magit-ido-completing-read
- magit-display-buffer-function
- #'magit-display-buffer-fullframe-status-v1)
- (nconc magit-section-initial-visibility-alist
- '(([unpulled status] . show)
- ([unpushed status] . show)))
- (custom-set-faces '(magit-diff-file-heading ((t (:weight normal)))))
-
- (with-eval-after-load 'magit-extras
- (csetq
- magit-pop-revision-stack-format
- (pcase-let ((`(,pt ,_eob ,index-regexp)
- (default-value 'magit-pop-revision-stack-format)))
- `(,pt "[%N: %h]: %ci\n %s
- https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=%H"
- ,index-regexp)))))
-;; global key bindings
-(global-set-key (kbd "C-x g") #'magit-status)
-(global-set-key (kbd "C-c g b") #'magit-blame-addition)
-(global-set-key (kbd "C-c g l") #'magit-log-buffer-file)
-(global-set-key (kbd "C-c g y") #'magit-pop-revision-stack)