git-stack VS jj

Compare git-stack vs jj and see what are their differences.

git-stack

Stacked branch management for Git (by gitext-rs)

jj

A Git-compatible VCS that is both simple and powerful (by martinvonz)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
git-stack jj
10 89
483 6,881
2.1% -
8.8 10.0
16 days ago 2 days ago
Rust Rust
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

git-stack

Posts with mentions or reviews of git-stack. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-11.
  • Pijul: Version-Control Post-Git • Goto 2023
    11 projects | news.ycombinator.com | 11 Aug 2023
    I'm not seeing a git compatibility layer? So I think it's a neat project, but I probably won't try it because nearly all code is rooted squarely in git. Even if Pijul is perfect, you'd need to convince everyone else to use it.

    Nevertheless, the increased interest in moving to patch based workflows from branch based ones is great. There's a lot of similar tools here (https://github.com/gitext-rs/git-stack/blob/main/docs/compar...) which I refer to infrequently.

    Personally my favorite tool for living-with-the-reality-that-is-branches is git-machete (https://github.com/VirtusLab/git-machete).

  • Highlights from Git 2.38
    2 projects | /r/git | 3 Oct 2022
    This is huge. I've wasted so much time on this, I wrote my own tool. No idea how thoroughly they've implemented this though (what all corner cases does it update or not)
  • In Praise of Stacked PRs
    14 projects | news.ycombinator.com | 24 Jul 2022
    > Probably some arcane git magic to (interactively) rebase branch

    There is not really a command for that yet, short of adding a bunch of `exec` steps to your interactive rebase manually. See https://news.ycombinator.com/item?id=32217204 for an upcoming command.

    You might enjoy using https://github.com/gitext-rs/git-stack, which specifically tries to let you manage stacked branches locally while not exposing tons of PRs to your coworkers.

    git-branchless itself also lets you manage stacked branches in various ways. For example, you can do `git checkout `, `git commit --amend`, and then `git restack` to rebase all the descendant branches sensibly. You can use it on the local side of things only and then use Github PRs as normal.

  • Termgraph 0.1 released
    3 projects | /r/rust | 17 May 2022
    I've been using termtree in my applications but I'm needing something more like git log --graph for git stack but haven't found a general purpose one (there is an implementation inside of git branchless) and haven't had a chance to make one myself.
  • Git PR management Tooling
    2 projects | /r/git | 7 May 2022
    Got a comparison of tools in this space at https://github.com/gitext-rs/git-stack/blob/main/docs/comparison.md
  • Git-stack: Stacked branch management for Git
    2 projects | news.ycombinator.com | 21 Mar 2022
  • 🗓 ⬇️ Lost in a sea of local branches? `--sort` might help!
    1 project | /r/git | 17 Mar 2022
    I try to keep the number of branches down but git-stack provides something like git log --graph that collapses branches from other users and old branches, keeping the main view clean.
  • Code Review Decision Fatigue
    2 projects | news.ycombinator.com | 14 Mar 2022
    Checkout https://github.com/gitext-rs/git-stack/blob/main/docs/compar... (note, the tool hosting this page is not included but as the author).

    As the author of git stack, with all relevant biases, I recommend

    - git stack for automating what you are already doing

    - git branchless for more power at the risk of incombatibilities because its only as good as the data fed to git hooks

    - jj if your open to something very different

jj

Posts with mentions or reviews of jj. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-05.
  • Why Don't I Like Git More?
    4 projects | news.ycombinator.com | 5 Apr 2024
  • Twenty Years Is Nothing
    4 projects | news.ycombinator.com | 4 Mar 2024
    Jujutsu is along the lines of what you describe: https://github.com/martinvonz/jj

    You can drop it in and work seamlessly from git repos

  • Git Branches as a Social Construct
    4 projects | news.ycombinator.com | 15 Jan 2024
    Pull Requests (or Merge Requests) are merged only when (1) all of the automated tests pass; and (2) enough necessary reviewers have indicated approval.

    Git doesn't tell you when it's necessary to have full test coverage and manual infosec review in development cycles that produce releases, and neither do Pull Requests.

    https://westurner.github.io/hnlog/#comment-19552164 ctrl-f hubflow

    It looks like datasift's gitflow/hubflow docs are 404'ing, but the original nvie blog post [1] has the Git branching workflow diagrams; which the wpsharks/hubflow fork [3] of datasift/gitflow fork [2] of gitflow [1]has a copy of in the README:

    [1] https://github.com/nvie/gitflow

    [2] https://github.com/datasift/gitflow

    [3] https://github.com/wpsharks/hubflow?tab=readme-ov-file

    https://learngitbranching.js.org/ is still a great resource, and it could work on mobile devices.

    The math of VCS deltas and mutable and immutable content-addressed DAG nodes identified by 2^n bits describing repo/$((2*inf)) bits ;

    >> "ugit – Learn Git Internals by Building Git in Python" https://www.leshenko.net/p/ugit/

    SLSA.dev is a social construct atop e.g. git, which is really a low-level purpose-built tool and Perl and now Python porcelain.

    jj (jujutsu) is a git-compatible VCS CLI: https://github.com/martinvonz/jj

    "Ask HN: Best Git workflow for small teams" (2016)

  • PyPy has moved to Git, GitHub
    3 projects | news.ycombinator.com | 1 Jan 2024
    You will probably like Jujutsu, which takes much inspiration from Mercurial: https://github.com/martinvonz/jj

    It isn't a 1-to-1 clone, either. But tools like revsets are there, cset evolution is "built in" to the design, etc. There is no concept of phases, we might think about adding that, but there is a concept of immutable commits (so you don't overwrite public ones.)

    It also has many novel features that make it stand out. We care a lot about performance and usability. Give it a shot. I think you might be pleasantly surprised.

    Disclosure: I am a developer of Jujutsu. I do it in my spare time.

  • Ask HN: Can we do better than Git for version control?
    17 projects | news.ycombinator.com | 10 Dec 2023
    I have created a discussion. Thank you both

    https://github.com/martinvonz/jj/discussions/2691

  • I (kind of) killed Mercurial at Mozilla
    12 projects | news.ycombinator.com | 21 Nov 2023
    > why don't version control systems (especially ones that can change history) have undo/redo functionality out of the box?

    It's true. And Jujutsu has undo functionality out of the box, too. It's not just Sapling. :) https://github.com/martinvonz/jj

  • Confusing Git Terminology
    5 projects | news.ycombinator.com | 2 Nov 2023
  • Things I just don't like about Git
    6 projects | news.ycombinator.com | 8 Oct 2023
    Git made the only choice a popular VCS can make. History rewrites will exist, period. If you're opposed to history rewrites, then git gives you the tools to ensure the repos you control are not rewritten, and that's all it can do in a world where people have control of their own computers.

    If Fossil ever becomes as popular as git, people will create software that allows history rewriting in Fossil, and that's fine. People will do what they want on their own computer, and I think it's morally wrong to try and stop that.

    Another user in this thread linked to jj [0], an alternative git client that does some pretty weird things. For example, it replaces the working tree with a working commit and commits quite often. I like git and that seems weird to me, but I'm not offended, people can do what they want on their own computer and I have the tools to ensure repos under my control are not effected. That's all I can hope for.

    [0]: https://github.com/martinvonz/jj

  • Pijul: Version-Control Post-Git • Goto 2023
    11 projects | news.ycombinator.com | 11 Aug 2023
    I recently found out about another project called jj: https://github.com/martinvonz/jj. It takes inspiration from Pijul and others but is git-compatible.
  • A beginner's guide to Git version control
    4 projects | news.ycombinator.com | 7 Aug 2023
    https://github.com/martinvonz/jj

    I think maybe both fossil and bitkeeper are more intuitive too.

    Did you try any of those?

What are some alternatives?

When comparing git-stack and jj you can also consider the following projects:

graphite-cli - Graphite's CLI makes creating and submitting stacked changes easy.

git-branchless - High-velocity, monorepo-scale workflow for Git

Git - Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documentation/SubmittingPatches procedure for any of your improvements.

autorebase - Automatically rebase all your branches onto master

forgit - :zzz: A utility tool powered by fzf for using git interactively.

tig - Text-mode interface for git

EdenSCM - A Scalable, User-Friendly Source Control System. [Moved to: https://github.com/facebook/sapling]

lazygit.nvim - Plugin for calling lazygit from within neovim.

pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.

spr - Stacked Pull Requests on GitHub

git-imerge - Incremental merge for git