Replies: 5 comments 1 reply
-
To define a separate storage backend, you need to write Rust code. There's an example here. However, if you're asking if you can use jj with your existing git repo (which you also use Breezy with), then you don't need a new storage backend, because we already have a storage backend for it. Does that answer your question? |
Beta Was this translation helpful? Give feedback.
-
It answers it somewhat. I could use jj with that one repo I was using with GitHub, but most of my repos are not associated with Git. |
Beta Was this translation helpful? Give feedback.
-
Yes, I'm aware that Darcs is different, but it seems that you could just feed it the diff. |
Beta Was this translation helpful? Give feedback.
-
The example I linked to earlier shows which functions need to be implemented by a backend. It's up to the backend how it provides that functionality. The git backend read and writes to a backing git repo. The native backend stores its data in protobuf files. The backend we have at Google uses RPCs. A backend certainly could run a Python command for every object it's asked to read or write. That should work, but it would probably be very slow for anything but a very small repo. |
Beta Was this translation helpful? Give feedback.
-
I thought I should update this to say that in an experiment using a Git repo, I was able to use most commands from Git, Breezy, or Jujutsu and it was reflected in the log in all three. This was after |
Beta Was this translation helpful? Give feedback.
-
What exactly is involved in defining another backend for commits? (Is that called storage?)
My preferred VCS is Bazaar (latest is called Breezy). I have been able to manage a GitHub repo using Breezy locally, since it knows how to interop with Git.
Is this a matter of using Git as the common denominator, or writing more Rust code to interface with other VCS? Would that be a plugin, or what?
Beta Was this translation helpful? Give feedback.
All reactions