1 Recent changes
════════════════

1.1 Unreleased
──────────────

1.1.1 Added
╌╌╌╌╌╌╌╌╌╌╌

  • Added support for `vc-log-search'.


1.1.2 Changed
╌╌╌╌╌╌╌╌╌╌╌╌╌


1.1.3 Removed
╌╌╌╌╌╌╌╌╌╌╌╌╌


1.1.4 Fixed
╌╌╌╌╌╌╌╌╌╌╌

  • Fixed a bug where the contents of ​*vc-diff​* were not erased prior to
    invocations of `vc-jj-diff'.


1.2 [0.5] - 2025-12-21
──────────────────────

[0.5] <https://codeberg.org/emacs-jj-vc/vc-jj.el/compare/v0.4...v0.5>

1.2.1 Added
╌╌╌╌╌╌╌╌╌╌╌

  • Added support for `vc-region-history'.  Note that this requires the
    repository to be co-located since we call `vc-git-region-history',
    but repositories are co-located by default since jujutsu 0.34.
  • Added `vc-jj-clone', making it possible to run `vc-clone'.
  • Define a new face: `vc-jj-log-view-commit'.  This is the face used
    for commit IDs in JJ Log View buffers.
  • Define a new face: `vc-jj-log-view-bookmark'.  This is the face used
    for bookmark names in JJ Log View buffers.
  • In the JJ Log View buffer:
    • Fontify conflict indicators (`vc-conflict-state')
    • Fontify commit IDs (`vc-jj-log-view-commit')
    • Fontify bookmark names (`vc-jj-log-view-bookmark')
  • New user option: `vc-jj-root-log-format'. `vc-jj-root-log-format'
    controls the format and fontification of the Log View buffer created
    from `vc-print-root-log'.
  • Added functionality for `vc-print-log' (the "long" revision log
    format).
  • Support editing project files on a remote host using Tramp.


1.2.2 Changed
╌╌╌╌╌╌╌╌╌╌╌╌╌

  • Commands specific to vc-jj in the JJ Log View buffer have been
    renamed to have a "vc-jj-log-view-" prefix.
  • Only abandon a change with `vc-jj-log-view-abandon-change' once the
    user confirms their decision.
  • Bookmark operations in the JJ Log View buffer (e.g.,
    `vc-jj-log-view-bookmark-delete', `vc-jj-log-view-abandon-change')
    no longer prompt to confirm reverting the parent buffer
    (`vc-parent-buffer') when `auto-revert-mode' is already enabled in
    that buffer.
  • In Emacs 30.1 and newer, reverting a JJ Log View buffer will, when
    possible, keep point on the same revision as before the revert. To
    undo this, add a function to `vc-jj-log-view-mode-hook' that removes
    `vc-jj-log-view-restore-position' from the local value of
    `revert-buffer-restore-functions'.


1.2.3 Fixed
╌╌╌╌╌╌╌╌╌╌╌

  • Fixed `vc-jj-diff' not transforming filenames into jj fileset
    syntax. This fixes commands like `vc-diff' and `log-view-diff' among
    others.
  • Fixed a bug related to vc-jj's integration with project.el in cases
    where a git repo is located within a subdirectory of a jj repo.
    Previously, when inside the git repo, project.el would erroneously
    detect the jj repo to be current one (instead of the git repo, which
    is closer).  Now, project.el correctly detects the closer git repo.
  • `vc-jj-bookmark-delete' now properly recognizes the names of local
    bookmarks that are pushable to a remote.
  • Prevent the possibility of operating on the wrong revisions when in
    stale JJ Log View buffers (Log View buffers that are not up-to-date
    with the repository).
  • Show the correct diff in log-edit buffers created by
    `log-view-modify-change-comment'.
  • Fix `vc-diff' in files whose revision has multiple parents.


1.3 [0.4] - 2025-09-03
──────────────────────

[0.4] <https://codeberg.org/emacs-jj-vc/vc-jj.el/compare/v0.3...v0.4>

1.3.1 Added
╌╌╌╌╌╌╌╌╌╌╌

  • Added `vc-jj-retrieve-tag', which makes it possible to use vc
    commands like `vc-switch-branch', which are implemented on top of
    `vc-retrieve-tag'.
  • Added `vc-jj-create-tag', which implements the vc.el create-tag
    method.  This makes it possible to use vc commands like
    `vc-create-branch', which call `vc-create-tag'.
  • Added several commands to manipulate bookmarks in
    `vc-jj-log-view-mode': `vc-jj-bookmark-set',
    `vc-jj-bookmark-delete', and `vc-jj-bookmark-rename'.  These have
    bindings under the "b" prefix key in `vc-jj-log-view-mode': `vc'
    buffers.
  • Added list of other jj support packages for Emacs to the
    documentation – not everyone is looking for vc integration :)


1.3.2 Fixed
╌╌╌╌╌╌╌╌╌╌╌

  • vc-jj now does not prevent non-vc Emacs operations (dired, editing
    files) in a corrupted jj repository.  Blocking this was never
    intended, but was a consequence of letting errors escape from
  …  …
