5 ms·
Working with Martin has been a real pleasure, and we'll have some more stuff to talk about very soon!
by steveklabnik 1mo ago
Working with Martin has been a real pleasure, and we'll have some more stuff to talk about very soon!
- opem 1mo agoexcited for what you guys would be coming up with ;) btw, did Martin leave google?
- steveklabnik 1mo agoThanks! Martin left Google for this, yes.
- underdeserver 1mo agoWasn't it partially owned by Google? Or are they just a contributer now?
- steveklabnik 1mo agoI like to compare Google and jj to Mozilla and Rust: Google employed Martin and some other maintainers, but it's always been an OSS project under the Apache 2.0 license. That being said, there's a few things that lead to this perception: the first is that it used to be under Google's GitHub account, but is now under its own org. The second is that contributing to jj does require signing Google's CLA. That is something that is desired to change, but that's up to Google. Due to the license, the community could fork it, and still have the rights to use the code, but that would be pretty aggressive, and so everyone involved would rather work together on this than do so. The move to its own GitHub org was one example of movement in that direction, but I'm not aware of an actual timeline to remove the CLA just yet. The project will figure it out over time. (I have a commit bit but am not a jj maintainer, so the above is my own impression from being involved in the community for the past few years.)
- underdeserver 1mo agoThanks! Maybe if Martin could comment - his @google.com email still appears in the repo readme, I'm assuming he doesn't have access to that box anymore - was the repo move and ownership coordinated with Google prior to his leaving?
- martinvonz 1mo agoThe move from martinvonz/jj to jj-vcs/jj happened almost two years ago. https://github.com/jj-vcs/jj/commit/b836e0ae9518154cd52f94e045bfe808b4471f1a https://github.com/jj-vcs/jj/commit/b836e0ae9518154cd52f94e0... (from 2024-12-17) says that it was recent at that time. Google were owners even when it was under martinvonz/jj, however.
- mcookly 1mo agoWould the CLA makes it easier to move away from Google and transfer the ownership to a new organization (if Google is willing)?
- steveklabnik 1mo agoDoesn’t really change it at all. Because there’s no copyright assignment, it’s not any different than any other open source project that doesn’t do it, there’s no ownership to actually move. It would just be about socially what is considered upstream.
- xyzzy_plugh 1mo agoHow is it under its own org, but changing the CLA is up to Google? Google must therefore administer the separate org? I get why you may want to color this as non-Google-owned but it seems to very much still be Google-owned.
- steveklabnik 1mo agoI don’t actually know who owns the org offhand. My point is not that it is “not Google owned” but to point out the specifics, which really matter. “Google owned” to me implies that they own the copyright to contributions, which they very much do not. That doesn’t mean that they have no control over it at all, of course, but the specific details matter a lot.
- tcoff91 1mo agoI absolutely love jj (just check my HN comment history). One thing I'd love to see in jj though that git does better is copy tracking. If somebody renames a file upstream, and you go to rebase your commit that touches that file onto main, jj doesn't handle this very well compared to git. Do you have any idea if this is coming to jj soon?
- steveklabnik 1mo agoThere is active work in this area, yes! https://github.com/jj-vcs/jj/issues/3386 https://github.com/jj-vcs/jj/issues/3386 is the bug tracking the feature request, and there have been some recent PRs working on implementing this, see here for one example: https://github.com/jj-vcs/jj/pull/9864 https://github.com/jj-vcs/jj/pull/9864
- drsouth 1mo agoDo you happen to have or know of any good open source projects on any public platform like GitHub, gitlab or Codeberg, that uses Jujutsu/jj?
- nickisnoble 1mo agoIt's hard to tell since any given dev can just use jj locally, if they want to, while everyone else uses git.
- dzaima 1mo agoTechnically, you can still tell actually - jj writes a "change-id xyz..." in the git commit object header, which remains there as it's pushed around. It's just typically not made visible by regular things. (I wonder what other random garbage has been hidden in git commit headers that noone has seen)
- OJFord 1mo agoHuh, fortunate for it that GitHub (especially) preserves it then! I wonder how guaranteed that is, can imagine GH deciding to 'clean' it (how much data can you put there theoretically? Or to close a range of potential security issues) and suddenly relatively niche but genuine uses like jj's change-id are unintentionally not preserved.
- drsouth 1mo agoWill this have any chance if Jujutsu/jj doesn't get more traction? The effort to learn a new VCS is less than for a programming language, but many developers have not learned git in depth, and Mercurial and others have not gained a lot of traction.
- Kinrany 1mo agoIt doesn't require that everyone switch at the same time, unlike other VCSs.
- saghm 1mo agoI'd argue that the reason a lot of developers have not learned git in depth is because it's actually kind of terrible from a UX standpoint (lots of inconsistent naming of things and somewhat leaky abstractions), and that Mercurial faced an uphill battle in large part because it lacked compatibility with what people were already using. I haven't used Mercurial, but from what I've heard quite a lot of how jj does things is similar to Mercurial, just in a way that's compatible with git. I haven't used git directly for over a year in favor of using jj despite exclusively using git repositories, and no one I've worked with has even needed to be aware.
- skydhash 1mo ago> I'd argue that the reason a lot of developers have not learned git in depth is because it's actually kind of terrible from a UX standpoint Not really. I remember my early years with git and the favt was that I never needed more than clone, add, commit, pull and push. While I’ve done some mistakes that got ne to learn more, especially with creating branches and undoing. I’ve never needed a lot, even when I started using GUI which exposed more concepts. Why? Because I have no understanding of version management and how it’s useful in a dev workflow/release process. I was just using it for checking in work. Since then, I’ve read the “Pro Git” book, learned how devs and teams handle versioning and devel a good understanding of how git can help me in my coding process and general software development. And it’s very good at what it does.
- 1mo ago