New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement faster branching #181

Closed
ArneBachmann opened this Issue Feb 12, 2018 · 0 comments

Comments

Projects
None yet
1 participant
@ArneBachmann
Copy link
Owner

ArneBachmann commented Feb 12, 2018

Will be fun to implement.
We can speed branching by having an optional parent = (originiating_branch, up_to_revision) in BranchInfo (incompatible change).
Branching would be instantaneously, but deleting a branch that others depend on will require copying all parent revisions into all of them before removing the branch.
Could be useful nevertheless.
The new branch would have the parent flag set to the originating branch/revision, plus a differential commit of not using --last. The first revision would be the one after the originating revision, leaving out r0..rn-1.
When operaint on the new branch, the computePaths has to recursively find the original changeset, but since all info is in Metadata.branches, this can be done in memory quickly.

@ArneBachmann ArneBachmann added this to the Future milestone Feb 12, 2018

@ArneBachmann ArneBachmann self-assigned this Feb 12, 2018

@ArneBachmann ArneBachmann modified the milestones: Future, 1.4 Feb 17, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment