828 Commits

Author SHA1 Message Date
Nils Koch
deb4f1ba79 docs: update git compatibility docs for commit signing 2025-05-04 22:52:24 +00:00
Nicole Patricia Mazzuca
05fa4bc0a3 docs: add some more info on signing
I was asked about this in Discord, so I wanted to make sure to have the
information available in the docs and not just the code.
2025-05-03 11:27:36 +00:00
Nicole Patricia Mazzuca
6f6496ba83 config: default to XDG config files on macOS
Support existing users with the "legacy" config directory, as well.
This will be deprecated in a latter commit.
2025-05-02 20:05:24 +00:00
Gaëtan Lehmann
2c4a0328f9 templates: add self.trailers().contains_key(key)
as a simpler and more readable alternative to

    self.trailers().filter(|t| t.key() == "Change-Id")
2025-04-29 06:36:12 +00:00
Mateus Auler
968806bc64 templates: implement Commit.trailers() 2025-04-27 18:29:25 +00:00
Ilya Grigoriev
5a735182ac docs conflicts.md: clarify the revert example a bit
Yuya's suggestion from
<https://github.com/jj-vcs/jj/pull/6415#discussion_r2061122640>.

Co-authored-by:  Yuya Nishihara <yuya@tcha.org>
2025-04-27 00:40:27 +00:00
Ilya Grigoriev
1f14f7a0ff docs conflicts.md: fix confusing typo
Fix #6414.
2025-04-27 00:40:27 +00:00
Martin von Zweigbergk
92629ded4c docs: make technical conflicts doc better match our recent thinking
These days, we usually think of conflicts as one base state and series
of diffs between other states. The base state is normally the parent
when rebasing.

Also, we're deprecated `jj backout` in favor of `jj revert`, so let's
use that terminology.
2025-04-25 13:53:28 +00:00
Sam
001801a3b1 cli: add config option for built-in pager's ruler 2025-04-23 03:16:58 +00:00
Benjamin Tan
f9c83541d6 docs: releasing: use gh api --paginate to construct contributor list 2025-04-22 15:03:23 +00:00
George Christou
69135abf5b docs: update meld install command 2025-04-22 00:28:33 +00:00
Vincent Ging Ho Yim
08f9a9af43 docs/contributing: remove explicit enabling of copy button in code snippets 2025-04-21 23:12:43 +00:00
Vincent Ging Ho Yim
f300371398 docs/contributing: add instructions to build the docs for offline distribution 2025-04-21 23:11:21 +00:00
Yuya Nishihara
1525740247 docs: fix copy-paste error in draft_commit_description example 2025-04-21 14:39:47 +00:00
Vincent Ging Ho Yim
24ab60b1c2 docs: split notes on jj commands into new column in Git command table 2025-04-21 00:45:01 +00:00
Vincent Ging Ho Yim
e90727b34d docs: convert Git command table from HTML to YAML
The YAML format is much easier to maintain and allows using Markdown instead of having
to escape symbols such as < and >.
2025-04-21 00:45:01 +00:00
Martin von Zweigbergk
15351a2d92 templates: extract a template alias as hook for default commit description
This makes it easier to override just the default description without
having copy the whole default template (and having to keep it up to
date with new versions).
2025-04-19 05:42:52 +00:00
Vincent Ging Ho Yim
183d4e1882 docs/index: use sentence case consistently for docs page names
Follow-up to 73e87bc.
2025-04-18 22:25:36 +00:00
Josh Steadmon
405331ba62 paid_contributors: sort contributor list
Make it easier to scan the list by sorting it (case-insensitive).
2025-04-18 20:30:59 +00:00
TimerErTim
ae1e831aa6 docs: mention openSUSE installation method 2025-04-17 18:34:12 +00:00
Winter
af60f3d674 cli: deprecate ui.default-description
Closes https://github.com/jj-vcs/jj/issues/6298.
2025-04-17 02:03:48 +00:00
Gaëtan Lehmann
f6e3f38b94 templates: add commonly used trailers
namely Signed-off-by and Change-Id

`format_signed_off_by_trailer` will be formatted properly if the author
name is not set, but will contain the email placeholder if the author
email is not set, as I haven't found a way to make the template
generation fail.

`format_gerrit_change_id_trailer` is based on jj's change id, but it
needed to be padded to reach 40 characters. Zero-padding is kind of
boring so I've used `6a6a6964`, the hexadecimal representation of `jjid`
in ascii.

Because the trailer value runs up to the end of the line, they are
all terminated with a new line. This way it's also convenient to
define these trailers in the `commit_trailers` template:

  [templates]
  commit_trailers = '''
    format_signed_off_by_trailer(self)
    ++ format_gerrit_change_id_trailer(self)
  '''
2025-04-15 05:16:16 +00:00
Winter
f3c4cc2155 cli: duplicate: add setting for templating the new commit descriptions
This allows the customization of the duplicated commit descriptions.

An ideal use case for this is emulating `git cherry-pick -x`, as
illustrated in the tests.
2025-04-13 21:49:47 +00:00
Gaëtan Lehmann
71a0194ad1 describe: add trailer support
Add a new `template.commit_trailer` configuration option. This template
is used to add some trailers to the commit description.

A new trailer paragraph is created if no trailer paragraph is found in
the commit description.
The trailer is not added to the trailer paragraph when the trailer is
already present, or if the commit description is empty.
2025-04-13 20:36:11 +00:00
Nils Koch
fbaa51b4ce revset: add signed function 2025-04-12 14:14:26 +00:00
Martin von Zweigbergk
42bf17936f docs: add a style guide
#5685
2025-04-10 22:01:48 +00:00
Benjamin Brittain
0b6d0a7a75 git_backend: derive the change ID from the git change-id header
When read/writing commits from the git-backend, populate the git commit
header with a backwards hash of the `change-id`. This should enable
preserving change identity across various git remotes assuming a
cooperative git server that doesn't strip the git header.

This feature is behind a `git.write-change-id-header` configuration flag
at least to start.
2025-04-09 16:42:56 +00:00
Philip Metzger
1716b7f8d3 docs: add some more testimonials
This is cobbled together from the "new" appreciation channel and something I saw on the Rust Zulip.
2025-04-08 20:55:09 +00:00
Emily
333d47f5e5 git: add deprecation warnings for git.subprocess 2025-04-08 10:36:46 +00:00
Yuya Nishihara
b63ab33b10 diff: add option to render color-words diffs without materializing conflicts
The original idea was to flatten left/right conflict trees and pair up adjacent
negative/positive terms. For example, diff(A, B-C+D) could be rendered as
diff(A, B) and diff(C, D). The problem of this formalization is that one of the
diff pairs is often empty (because e.g. A=B), so the context is fully omitted.
The resulting diff(C, D) doesn't provide any notion why the hunk is conflicted,
and how it is different from A.

Instead, this patch implements diffs in which each left/right pair is compared.
In the example above, the left terms are padded, and the diffs are rendered as
diff(A, B), diff(-A, -C), diff(A, D). This appears to be working reasonably well
so long as either side is resolved or both sides have the same numbers of terms.

Closes #4062
2025-04-08 09:12:39 +00:00
Aleksey Kuznetsov
3eaff83bca cli: Add config setting for bookmark list sort order
This is a conclusion of #5849.
Config setting to list bookmarks in specified order.

Closes #3831
2025-04-08 08:06:29 +00:00
Remo Senekowitsch
5a50e49d70 docs: update list of builtin merge tools 2025-04-08 01:17:27 +00:00
Philip Metzger
1b7fda946e docs: Add Jujutsu's Developers core values
This was taken out of the "Jujutsu from first principles" doc in another PR. It represents some of the common ideas
which the project had around a year ago.

I think this can be modernized if the maintainers want it.
2025-04-07 13:44:02 +00:00
Aleksey Kuznetsov
29f24ad2d8 docs: Mention Helix with taplo for config.toml validation
Not sure if Helix is considered popular but I thought
it should be mentioned anyway :)
2025-04-04 21:19:45 +00:00
Nicole Patricia Mazzuca
02687ac7e5 docs: standardize on .method() syntax
In docs/templates.md, the Commit type and Operation type looked like:

`method() -> ReturnType`

rather than everything else, which looks like:

`.method() -> ReturnType`

This commit changes the Commit and Operation types to look more like the
rest of the documentation.
2025-04-04 13:58:33 +00:00
Waleed Khan
5a63fd9628 docs: update contributor command
- Now computes the latest tag automatically in the first suggested command.
- Now excludes dependabot.

I used the command to generate the list of contributors in the v0.28.0 release commit.
2025-04-02 23:52:10 +00:00
Kenyon Ralph
a1d2246cc2 FAQ: fix typo 2025-04-02 21:05:05 +00:00
Nick Pupko
2ba756cc1d docs: replace outdated method in the Signature type
The `username()` is deprecated, but `email().local()` technically does the same now
2025-04-02 14:20:01 +00:00
Yuya Nishihara
fd05b6f4cb cli: make description template insert blank line if old description was empty
This helps detect whether the last line is "JJ:" instruction or not. It seems
also nice that I don't have to insert newline to reflow the edited paragraph.
2025-04-01 02:02:02 +00:00
Martin von Zweigbergk
4930ee7601 faq: in entry about reordering commits, mention rebase -A/-B 2025-03-31 21:46:51 +00:00
Robin Stocker
0456701e18 cli: Print @ and @- in status and print_updated_working_copy_stats
This helps newcomers learn/remember what @ and @- stand for.
2025-03-31 11:57:04 +00:00
Yuya Nishihara
3f5f872204 view: rename workspace "id" to "name"
This matches the current implementation.
2025-03-31 03:39:29 +00:00
Yuya Nishihara
e66c545438 view: replace WorkspaceId by string-like newtypes
I think this makes more sense because WorkspaceId is currently a human-readable
name. In error/status messages, workspace names are now printed in revset
syntax.

New WorkspaceId types do not implement Default. It would be weird if string-like
type had non-empty Default::default(). The DEFAULT constant is provided instead.
2025-03-31 03:39:29 +00:00
Yuya Nishihara
f87db58617 view: rename RemoteRefState::Tracking to Tracked
In jj's model, a local bookmark "tracks" remote bookmarks. It's wrong to call
a remote bookmark state as "tracking".
2025-03-31 01:41:31 +00:00
Martin von Zweigbergk
cb8d8d0eef paid_contributors: torquestomp has left Google
They are technically employed for another week or so, but they're on
vacation. Removing now before I forget.
2025-03-29 17:33:47 +00:00
Vincent Ging Ho Yim
25dbce663e docs/revsets: fix fork_point() example
In the diagram, E has parent B, and D has parents B and C, so the fork point of E and D
(the most downstream common ancestor of these commits) should be B rather than A.
2025-03-29 13:08:01 +00:00
Vincent Ging Ho Yim
80d81b5d13 docs/revsets: add missing node glyphs in diagrams 2025-03-29 13:08:01 +00:00
Daniel Luz
05c77a853f formatter: add support for reversing colors 2025-03-25 15:54:22 +00:00
Yuya Nishihara
9a615b5b62 config: relax bare string rule to accept middle apostrophes, etc.
Closes #5748
2025-03-22 09:00:44 +00:00
Martin von Zweigbergk
be0ad55309 doc: update some references to "the native backend" 2025-03-21 16:27:51 +00:00