| ▲ | gcr a day ago | ||||||||||||||||||||||||||||
So it’s a workspace that includes changes from multiple branches at once, like `jj new revset-1 revset-2 revset-3 …` ? (Git has octopus merges, jj just calls them “merge commits” even though they may have more than two parents) | |||||||||||||||||||||||||||||
| ▲ | andrewaylett 19 hours ago | parent | next [-] | ||||||||||||||||||||||||||||
No, it let you continue to follow the main branch for most files, while files you edited would have their changes saved to a different location. And was just about as horrible as you might imagine. We moved from VSS to SVN, and it took a little encouraging for the person who had set up our branching workflow using that VSS feature to be happy losing it if that freed us from VSS. | |||||||||||||||||||||||||||||
| ▲ | ChrisMarshallNY a day ago | parent | prev [-] | ||||||||||||||||||||||||||||
Don't remember exactly. If I think about it, it could be quite complex. Git has the concept of "atomic repos." Repos are a single unit, including all files, branches, tags, etc. Older systems basically had a single repo, with "lenses" into sections of the repo (usually called "workspaces," or somesuch. VSS called them something else, but I can't remember). I find the atomic repo thing awkward; especially wrt libraries. If I include a package, I get the whole kit & kaboodle; including test harnesses and whatnot. My libraries thend to have a lot more testing code than library code. Also, I would love to create a "dependency repo," that aggregates the exported parts of the libraries that I'm including into my project, pinned at the required versions. I guess you could say package managers are that, but they are kind of a blunt instrument. Since I eat my own dog food, I'd like to be able to write changes into the dependency, and have them propagate back to their home repo, which I can sort of do now, if I make it a point to find the dependency checkout, make a change, then push that change, but it's awkward. But that seems crazy complex (and dangerous), so I'm OK with the way things work now. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||