-
-
Notifications
You must be signed in to change notification settings - Fork 204
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
Add support for Jujutsu (when using git store) #875
Comments
Thanks for opening your first issue at git-cliff! Be sure to follow the issue template! ⛰️ |
Hey, thanks for the suggestion! Jj is actually pretty nice, I maintain it and
It sounds quite straightforward! Would you be interested in trying that out and seeing if
I think adding support for Jujutsu would be pretty cool, nevertheless! Something that might come up later is #131 - do you have any idea if |
I can certainly give it a go. Let me get my current project squared away and I can look at it then. I used |
That sounds great - I also think that implementation would be straightforward, all we need for |
I've had a look at how the git repo is configured when it is located in
Having
So, To make the git repo usable we could:
I would lean towards having the user do it, at least for an initial implementation. Thoughts @orhun? |
Thanks for investigating this!
Not related, but it seems like doing
I'm also wondering if this could be something solved in |
Is there an existing issue or pull request for this?
Feature description
Jujutsu is a version control system very similar to Git. It currently uses Git as it's local store. It can work with Git in one of two ways. One is 'co-located', where the
.git
repo is in it's normal location. The other stores the.git/
files in.jj/repo/store/git/
. This second is the default when the user clones a Git repo without explicitly requesting that is be co-located.I would like to be able to use
git-cliff
with a repo that I have checked out locally using the default non-co-located configuration.Desired solution
Detecting the alternate location of the
.git/
files should be straight forward. When the.git/
directory is not found, simply retry using the.jj/repo/store/git/
directory instead.Jujutsu is branchless, so there may not be any local branches. There will still be references to the remote branches, e.g.
origin/main
, etc. e.g..jj/repo/store/git/refs/remotes/origin/main
.So, when using the Jujutsu location for the git repo, using the remote branches rather than local ones may be required. (It is possible to have local branches, but this is up to the users discretion/workflow).
Alternatives considered
Only clone repos with Jujutsu using the co-located option. This is an easy solution with no real downside other than the need to remember to pass the required parameter when cloning.
Additional context
I recognise that
git-cliff
is aimed at Git compatibility (it's right there in the name!). Jujutsu uses the same on-disk store, so support shouldn't be too difficult to implement. (Then again there's the other 80% of the problem I can't see).The text was updated successfully, but these errors were encountered: