-
Notifications
You must be signed in to change notification settings - Fork 753
Implement jj sign and jj unsign commands
#4747
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
0753a24 to
46731eb
Compare
517e230 to
45be04d
Compare
6b049ab to
2c49a16
Compare
|
This is still WIP, but I would love to get some feedback on the general approach and if this has any design flaws that I need to address before polishing. // edit Some things, which have been discussed in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually left a couple of comments.
Dropped signatures hint and builtin templates can be separate PRs, yes.
Will reiterate my idea for the templates here:
There should be a some_consistent_name_for_crypt_sig template that's used in the default log template and by default it's empty.
Then there should be some_other_name template that's unused, but is present by default, with my pretty checkmarks or whatever.
And then in FAQ or in docs, there should be a tip "you can run this jj config command to set that first template to equal that second one so that you'll get checkmarks in all the default templates".
"Or you can set that template to if(signature, "[•]", "") to just differentiate signed commits from unsigned in the logs, which is very fast compared to actually verifying them"
Another thing that could be in some tips and tricks section, is an alias for jj log that has --config= set that template thing to show signatures temporarily.
Also for the builtin_log_detailed there was a change somewhere that showed a Signature: extra line - maybe do the same thing with empty default one + unused verifying one?. Or have the detailed log always verify. Maybe Yuja has an opinion there
|
Wow, thanks a lot for your feedback, @necauqua and @martinvonz! Now I am all set to return to my dungeon and work on the how. // edit |
|
Very offtopic, sorry, but there's no chance in hell I'd have contributed to jj if is was cpp or something. |
|
Thanks @yuja! |
57f73d5 to
69f4222
Compare
180472f to
1c151ed
Compare
We always sign commits. This means commits, which are already signed, will be resigned. While this is cumbersome for people using hardware devices for signatures, we cannot reliably check if a commit is already signed at the moment (see jj-vcs#5786). We output warnings when signing commits, which are not authored by the user. This is encouraging to use `jj undo`, in case one unintentionally signs commits of others. The output of `jj sign` is based on that of `jj abandon`. --- Co-authored-by: julienvincent <[email protected]> Co-authored-by: necauqua <[email protected]>
The output of `jj unsign` is based on that of `jj abandon`. We output warnings when unsigning commits, which are not authored by the user. This is encouraging to use `jj undo`, in case one unintentionally drops signatures of others. --- Co-authored-by: julienvincent <[email protected]> Co-authored-by: necauqua <[email protected]>
1c151ed to
9fc7b2d
Compare
Following up on jj-vcs#4747 (see jj-vcs#4747 (comment)).
Following up on jj-vcs#4747 (see jj-vcs#4747 (comment)).
Following up on jj-vcs#4747 (see jj-vcs#4747 (comment)).
Following up on jj-vcs#4747 (see jj-vcs#4747 (comment)).
Following up on #4747 (see #4747 (comment)).
Closes #4712
Checklist
If applicable:
CHANGELOG.mdI have updated the config schema (cli/src/config-schema.json)