Skip to content

Commit

Permalink
demo git_compat and README: repurpose the demo somewhat
Browse files Browse the repository at this point in the history
It is important to mention tracking branches and listing branches. This topic is important now that `jj log` does not show branches
`jj git clone` says it fetched by default. 

The demo has become more about navigating a Git remote, so I reworded
the README accordingly, shifting the focus more to "Git remote
compatibility" and away from "We include a Git repo". Both are
important, but these skills seem important for beginners.
  • Loading branch information
ilyagr committed Sep 6, 2024
1 parent 12fb514 commit 51c374e
Show file tree
Hide file tree
Showing 3 changed files with 100 additions and 45 deletions.
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,8 +206,11 @@ backend. The backend exists mainly to make sure that it's possible to eventually
add functionality that cannot easily be added to the Git backend.

The Git backend is fully featured and maintained, and allows you to use Jujutsu
as an alternative interface to Git. The commits you create will look like
regular Git commits. You can always switch back to Git.
with any Git remote. The commits you create will look like regular Git commits.
You can fetch branches from a regular Git remote and push branches to the
remote. You can always switch back to Git.

Here is how you can explore a GitHub repository with `jj`.

<img src="demos/git_compat.png" />

Expand Down
20 changes: 18 additions & 2 deletions demos/demo_git_compat.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,26 @@ comment "Clone a Git repo:"
run_command "jj git clone https://github.com/octocat/Hello-World"
run_command "cd Hello-World"

comment "Inspect it:"
run_command "jj log -r 'all()'"
blank

comment "By default, \"jj\" creates a local master branch tracking the remote master
branch. The other branches are only available as remote-tracking branches."
run_command "jj branch list --all"
comment "We can create a local branch tracking one of the remote branches we just
fetched."
run_command "jj branch track octocat-patch-1@origin"

comment "By default, \"jj log\" excludes untracked remote branches to focus on
\"our\" commits."
run_command "jj log"

comment "We can also ask \"jj\" to show all the commits."
run_command "jj log -r 'all()'"

comment "We can look at the diffs of commits in the repo"
run_command "jj diff -r b1"
blank
run_command "jj diff -r b3"

comment "The repo is backed by the actual Git repo:"
run_command "git --git-dir=.jj/repo/store/git log --graph --all --decorate --oneline"
Expand Down
Loading

0 comments on commit 51c374e

Please sign in to comment.