📈 GH Trending Explorer 🎲 Surprise me

← all repos

jj-vcs / jj

git clone https://github.com/jj-vcs/jj.git v0.46.0 · 15d ago

A Git-compatible VCS that is both simple and powerful

+20
stars, 24h · #1,868
+~91
stars, 7 days · #2,389
+~390
stars, 30 days · #2,121
32k
★ total · +0% this week
1.3k
forks · 1.2k open issues

Star history (as recorded here)

2026-10-20 · 32,168 ★ 2026-10-23 · 32,207 ★
LanguageRust
LicenseApache-2.0
Created2020-12-18 (5y ago)
Last pushtoday
Watchers103
OwnerOrganization

Links

README excerpt
# Jujutsu—a version control system
**[Homepage]   •  **
**[Installation]   •  **
**[Getting Started]   •  **
**[Development Roadmap]   •  **
**Contributing**
[Homepage]: https://www.jj-vcs.dev
[Installation]: https://docs.jj-vcs.dev/latest/install-and-setup
[Getting Started]: https://docs.jj-vcs.dev/latest/tutorial
[Development Roadmap]: https://docs.jj-vcs.dev/latest/roadmap
## Introduction
Jujutsu is a powerful version control system
for software projects. You use it to get a copy of your code, track changes
to the code, and finally publish those changes for others to see and use.
It is designed from the ground up to be easy to use—whether you're new or
experienced, working on brand new projects alone, or large scale software
projects with large histories and teams.
Jujutsu is unlike most other systems, because internally it abstracts the user
interface and version control algorithms from the *storage systems* used to
serve your content. This allows it to serve as a VCS with many possible physical
backends, that may have their own data or networking models—like [Mercurial] or
[Breezy], or hybrid systems like Google's cloud-based design, [Piper/CitC].
[Mercurial]: https://www.mercurial-scm.org/
[Breezy]: https://www.breezy-vcs.org/
[Piper/CitC]: https://youtu.be/W71BTkUbdqE?t=645
Today, we use Git repositories as a storage layer to serve and track content,
making it **compatible with many of your favorite Git-based tools, right now!**
However, note that only commits and files are stored in Git; bookmarks
(branches) and other higher-level metadata are stored in custom storage outside
of Git. All core developers use Jujutsu to develop Jujutsu, right here on
GitHub. But it should hopefully work with your favorite Git forges, too.
We combine many distinct design choices and concepts from other version control
systems into a single tool. Some of those sources of inspiration include:
- **Git**: We make an effort to [be fast][perf]—with a snappy UX, efficient
 algorithms, correct data structures, and good-old-fashioned attention to
 detail. The default storage backend uses Git repositories for "physical
 storage", for wide interoperability and ease of onboarding.
- **Mercurial & Sapling**: There are many Mercurial-inspired features, such as
 the [revset] language to select commits. There is [no explicit index][no-index]
 or staging area. Branches are "anonymous" like Mercurial, so you don't need
 to make up a name for each small change. Primitives for rewriting history are
 powerful and simple. Formatting output is done with a robust template language
 that can be configured by the user.
- **Darcs**: Jujutsu keeps track of conflicts as [first-class
 objects][conflicts] in its model; they are first-class in the same way commits
 are, while alternatives like Git simply think of conflicts as textual diffs.
 While not as rigorous as systems like Darcs (which is based on a formalized
 theory of patches, as opposed to snapshots), the effect is that many form