mirror of
https://github.com/martinvonz/jj.git
synced 2024-11-28 17:41:14 +00:00
a70ea9dfdc
This is mainly to account for the fact that most commands now report more information about the state of the repo.
54 lines
1.6 KiB
Bash
Executable file
54 lines
1.6 KiB
Bash
Executable file
#!/bin/bash
|
|
set -euo pipefail
|
|
. "$(dirname "$0")"/helpers.sh
|
|
|
|
new_tmp_dir
|
|
jj git clone https://github.com/octocat/Hello-World > /dev/null
|
|
cd Hello-World
|
|
|
|
comment "We are in the octocat/Hello-World repo.
|
|
The \"operation log\" shows the operations
|
|
so far:"
|
|
run_command "jj op log"
|
|
|
|
comment "We are going to make some changes to show
|
|
how the operation log works. Let's add a file, set
|
|
a description, and rebase onto the \"test\" branch:"
|
|
run_command "echo stuff > new-file"
|
|
run_command "jj describe -m stuff"
|
|
run_command "jj rebase -d test"
|
|
|
|
comment "We are now going to make another change off of
|
|
master:"
|
|
run_command "jj co master"
|
|
run_command "jj describe -m \"other stuff\""
|
|
|
|
comment "The repo now looks like this:"
|
|
run_command "jj log"
|
|
comment "The most recent portion of the operation log
|
|
is:"
|
|
run_command_allow_broken_pipe "jj op log --limit 4"
|
|
|
|
comment "Let's undo that rebase operation:"
|
|
rebase_op=$(jj --color=never op log --no-graph -T 'id.short(5)' --limit 1 --at-op @--)
|
|
run_command "jj undo $rebase_op"
|
|
|
|
comment "Note that only the rebase was undone, and the
|
|
subsequent \"other stuff\" change was not undone:"
|
|
run_command "jj log"
|
|
|
|
comment "We can also see what the repo looked like
|
|
after the rebase operation:"
|
|
run_command "jj --at-op $rebase_op log"
|
|
|
|
comment "Let's say we instead want to go back to the
|
|
state of the repo right after the rebase:"
|
|
run_command "jj op restore $rebase_op"
|
|
|
|
# TODO: Explain and demo that undo and restore are also recorded? Remove demo
|
|
# of --at-op?
|
|
comment "We're now back to before the \"other stuff\"
|
|
change existed:"
|
|
run_command "jj log"
|
|
|
|
blank
|