1
11
Fork
You've already forked agitjo
0
Manage Forgejo PRs with AGit-Flow in Emacs
  • Emacs Lisp 97%
  • Scheme 3%
Javier Olaechea fa9737479f
agitjo-setup: Add autoload cookie
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")
2026年05月23日 15:48:55 -05:00
images images: Update menu.png 2025年10月01日 17:31:57 -04:00
agitjo.el agitjo-setup: Add autoload cookie 2026年05月23日 15:48:55 -05:00
CHANGELOG.org Bump version to 2.0.0 2026年04月15日 22:51:56 +08:00
COPYING Initial commit 2025年08月26日 15:41:56 -04:00
guix.scm guix.scm: Add missing import 2025年08月28日 16:55:47 -04:00
README.org README.org: Add links to MELPA pages 2026年04月15日 23:08:54 +08:00

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:

  1. Write and commit some code, and eventually decide it's ready for a pull request.
  2. Open Agitjo's transient menu with M-x agitjo-push or by inputting the # key inside a Magit status buffer.
  3. Set options like the title (-t) and the session identifier (-s).
  4. Invoke one of the push commands to execute a git-push operation.
  5. If creating a new PR (the force-push option -f is disabled), a dedicated buffer will open for drafting a PR description.
  6. Visit the created pull request's link (V) in a browser to inspect it and make any additional adjustments, if needed.
  7. Repeat steps 1-4 with the force-push option (-f) enabled to push changes to the existing PR.