- Emacs Lisp 97%
- Scheme 3%
|
Javier Olaechea
fa9737479f
Otherwise we need to require agitjo explicitly before calling `agitjo-setup'. i.e. (with-eval-after-load 'magit (require 'agitjo) ; ← With the autoload cookie we can skip this call (agitjo-setup "#")) Ref: (info "(elisp)Autoload Cookie") |
||
|---|---|---|
| images | images: Update menu.png | |
| agitjo.el | agitjo-setup: Add autoload cookie | |
| CHANGELOG.org | Bump version to 2.0.0 | |
| COPYING | Initial commit | |
| guix.scm | guix.scm: Add missing import | |
| README.org | README.org: Add links to MELPA pages | |
AGitjo
AGitjo is a GNU Emacs package that extends Magit with a new menu for AGit-Flow operations, to make them more convenient for users. The AGit workflow enables users to create and edit pull requests using just the "git push" command. This package is intended specifically for use with Forgejo-based (e.g. Codeberg) repositories.
See Forgejo's documentation about AGit-Flow to learn more.
/halvin/agitjo/media/branch/main/images/menu.png
Installation
Guix
AGitjo is available as a GNU Guix package.
The stable version can be found in the (gnu packages emacs-xyz) module, under
the symbol emacs-agitjo. One may install it into the user profile like so:
guix install emacs-agitjo
This package may also be installed using the guix.scm file in this repository.
For example, to install to the user profile, one may run the following in this
repository's root directory:
guix package --install-from-file=guix.scm
MELPA
AGitjo is also available on MELPA and MELPA Stable. See Getting Started for instructions on using the MELPA repositories.
Usage
Run the following to load AGitjo and set up key-bindings in the relevant Magit
keymap (in this example, we use #):
(use-package agitjo
:config (agitjo-setup "#"))
An average workflow might look like the following:
- Write and commit some code, and eventually decide it's ready for a pull request.
- Open Agitjo's transient menu with
M-x agitjo-pushor by inputting the#key inside a Magit status buffer. - Set options like the title (
-t) and the session identifier (-s). - Invoke one of the push commands to execute a git-push operation.
- If creating a new PR (the force-push option
-fis disabled), a dedicated buffer will open for drafting a PR description. - Visit the created pull request's link (
V) in a browser to inspect it and make any additional adjustments, if needed. - Repeat steps 1-4 with the force-push option (
-f) enabled to push changes to the existing PR.