Published: October 21, 2025
62
57
1.3k

RE: Stacked Diffs on @GitHub After discussion w @ttaylorr_b, we can implement stacked PRs/PR groups already (in fact we kind of do with Copilot) but restacking (automatically fanning out changes from the bottom of the the stack upwards) would be wildly inefficient. To do it

To be clear, packed-refs doesn't make restacking impossible by itself, and we already can/do batch reference updates together into a single transaction. Any individual transaction only rewrites the packed-refs file at most once. The thing that @ttaylorr_b et al is more worried

@jaredpalmer @github @ttaylorr_b Jared going to GitHub was a gift to all developers

@chribjel @github @ttaylorr_b Trying to make it better everyday 🫡

@jaredpalmer @github @ttaylorr_b jj does a great job at this locally so seeing this on github would be really cool

@Smit_Chaudhary3 @github @ttaylorr_b jj is very cool indeed

@jaredpalmer @github @ttaylorr_b Is there any insight into why previous efforts were abandoned? There are tweets from years ago from very senior GH people saying it was being worked on.

@andrewingram @github @ttaylorr_b Indeed. There was very impressive and polished attempt in 2022 (I saw the video demo). I’m told it implemented almost everything client side inside gh cli workflow but then had stack review UI on web. However, I’m told it didn’t build around PRs but its own new paradigm over

@jaredpalmer @github @ttaylorr_b Any chance of being able to create pull requests with its own workflow which does pre-checks client side? Consider linting, doing it on commit slows down too much, but in CI is too late. On PR creation (like arc/Phabricator) is perfect.

@boyto_ @github @ttaylorr_b So rather than prepush hook you want to run action when a PR is created but never again?

@jaredpalmer @github @ttaylorr_b The 2010s rejoice!

@ola @github @ttaylorr_b we’re so back

@jaredpalmer @github @ttaylorr_b It might be nice to have merge trains also

@1108King @github @ttaylorr_b what do you mean? a merge queue?

@jaredpalmer @github @ttaylorr_b Sorry, I'm trying to figure out why this is a refs problem for @github (cc @ttaylorr_b for clarification?). First, the perf difference between packed-refs and reftable storage can't be really significant until there are hundreds of thousands of refs, which must be less than 1%

@jaredpalmer @github @ttaylorr_b RIP three startups

@jaredpalmer @github @ttaylorr_b what an absolute machine

@jaredpalmer @github @ttaylorr_b Wait wait what???

@jaredpalmer @github @ttaylorr_b So no more laggy diffs when they’re big??? This is really great btw

@jaredpalmer @github @ttaylorr_b Thanks for doing proper product discovery. I will be pleased when you ship stacked PRs.

@jaredpalmer @steipete @github @ttaylorr_b let’s fucking gooooooooooooooo

@jaredpalmer @github @ttaylorr_b I love what you are doing over at GitHub now. Cheers!

@jaredpalmer @github @ttaylorr_b ahh… stack diffs… nostalgia

@jaredpalmer @github @ttaylorr_b Been using Graphite for this, and the UX is top notch. The ability to stack PRs and see the stacked changes is too good. Also a breeze to review

Share this thread

Read on Twitter

View original thread

Navigate thread

1/28