docs(emacs): move Jujutsu section
This commit is contained in:
@@ -1399,53 +1399,6 @@ left it.
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Project Management
|
** Project Management
|
||||||
*** Jujutsu
|
|
||||||
Let’s face it: [[https://git-scm.com/][git]] is awesome. There’s a reason it took over the world
|
|
||||||
of software development, replacing pretty much all competitors such as
|
|
||||||
subversion. And I will forever love it. But, it has a lot of
|
|
||||||
drawbacks, especially its interface that is... not great, to put it
|
|
||||||
mildly. I absolutely respect its commitment to staying backward
|
|
||||||
compatible, but it’s not great.
|
|
||||||
|
|
||||||
[[https://jj-vcs.github.io/][Jujutsu]] on the other hand, is awesome! It’s interface is really clean,
|
|
||||||
really intuitive, especially for someone like me who rebases a LOT!
|
|
||||||
And, for now, it still uses git as its backend, so it’s entirely
|
|
||||||
compatible with git repositories. In fact, I pretty much don’t use git
|
|
||||||
anymore, jj (abbreviation of Jujutsu) has almost completely replaced
|
|
||||||
git for me.
|
|
||||||
|
|
||||||
I like Magit’s interface, as you can see in my [[file:./applications.md#magit][Magit]] config.
|
|
||||||
Therefore, let’s install =majjit=, my slow and scuffed attempt at
|
|
||||||
bringing some Magit features to jujutsu.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package majjit
|
|
||||||
:defer t
|
|
||||||
:after magit
|
|
||||||
:straight (majjit :built t
|
|
||||||
:type git
|
|
||||||
:host nil
|
|
||||||
:repo "https://labs.phundrak.com/phundrak/majjit")
|
|
||||||
:custom ((majjit-default-directory "~/code/")))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
Though, I’ll be honest, I generally prefer to use Jujutsu in the
|
|
||||||
terminal, unlike git. Something I do use Emacs for, however, is
|
|
||||||
writing my commit messages.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package jjdescription
|
|
||||||
:defer nil
|
|
||||||
:straight (:build t)
|
|
||||||
:commands jjdescription-mode
|
|
||||||
:init (add-to-list 'auto-mode-alist '("\\.jjdescription\\'" . jjdescription-mode)))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
And I want Emacs to know that any directory which has a =.jj= repository
|
|
||||||
is the root of a project.
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(add-to-list 'project-vc-extra-root-markers ".jj")
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** Magit
|
*** Magit
|
||||||
Magit is an awesome wrapper around Git for Emacs! Very often, I go
|
Magit is an awesome wrapper around Git for Emacs! Very often, I go
|
||||||
from disliking to really hating Git GUI clients because they often
|
from disliking to really hating Git GUI clients because they often
|
||||||
@@ -1562,6 +1515,53 @@ deactivate `magit-todos-mode', otherwise enable it."
|
|||||||
(setq magit-todos-ignore-case nil))
|
(setq magit-todos-ignore-case nil))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
*** Jujutsu
|
||||||
|
Let’s face it: [[https://git-scm.com/][git]] is awesome. There’s a reason it took over the world
|
||||||
|
of software development, replacing pretty much all competitors such as
|
||||||
|
subversion. And I will forever love it. But, it has a lot of
|
||||||
|
drawbacks, especially its interface that is... not great, to put it
|
||||||
|
mildly. I absolutely respect its commitment to staying backward
|
||||||
|
compatible, but it’s not great.
|
||||||
|
|
||||||
|
[[https://jj-vcs.github.io/][Jujutsu]] on the other hand, is awesome! It’s interface is really clean,
|
||||||
|
really intuitive, especially for someone like me who rebases a LOT!
|
||||||
|
And, for now, it still uses git as its backend, so it’s entirely
|
||||||
|
compatible with git repositories. In fact, I pretty much don’t use git
|
||||||
|
anymore, jj (abbreviation of Jujutsu) has almost completely replaced
|
||||||
|
git for me.
|
||||||
|
|
||||||
|
I like Magit’s interface, as you can see in my [[file:./applications.md#magit][Magit]] config.
|
||||||
|
Therefore, let’s install =majjit=, my slow and scuffed attempt at
|
||||||
|
bringing some Magit features to jujutsu.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package majjit
|
||||||
|
:defer t
|
||||||
|
:after magit
|
||||||
|
:straight (majjit :built t
|
||||||
|
:type git
|
||||||
|
:host nil
|
||||||
|
:repo "https://labs.phundrak.com/phundrak/majjit")
|
||||||
|
:custom ((majjit-default-directory "~/code/")))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Though, I’ll be honest, I generally prefer to use Jujutsu in the
|
||||||
|
terminal, unlike git. Something I do use Emacs for, however, is
|
||||||
|
writing my commit messages.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package jjdescription
|
||||||
|
:defer nil
|
||||||
|
:straight (:build t)
|
||||||
|
:commands jjdescription-mode
|
||||||
|
:init (add-to-list 'auto-mode-alist '("\\.jjdescription\\'" . jjdescription-mode)))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
And I want Emacs to know that any directory which has a =.jj= repository
|
||||||
|
is the root of a project.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;;(add-to-list 'project-vc-extra-root-markers ".jj")
|
||||||
|
#+end_src
|
||||||
|
|
||||||
*** Forge
|
*** Forge
|
||||||
Forge acts as an interface for GitHub, GitLab, and Bitbucket inside
|
Forge acts as an interface for GitHub, GitLab, and Bitbucket inside
|
||||||
Magit. A lot of possibilities are present, you can read issues and
|
Magit. A lot of possibilities are present, you can read issues and
|
||||||
|
|||||||
Reference in New Issue
Block a user