Skip to content

Share tree merging through the server - #279

Closed
nishu-builder wants to merge 1 commit into
codex/replay-design-20260924-70793dfrom
codex/git-tree-tools-20260924-70793d
Closed

nishu-builder wants to merge 1 commit into
codex/replay-design-20260924-70793dfrom
codex/git-tree-tools-20260924-70793d

Conversation

@nishu-builder

@nishu-builder nishu-builder commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Merge source trees directly in the server’s existing Git store. The endpoint accepts either an explicit base and two trees, or two commits whose merge base Git finds.

Both std/merge and std/git-merge-tree use it, so ordinary merges no longer fetch a repository into a worker. std/git-commit-tree formats commit headers and uses the existing caos put-commit command.

@nishu-builder
nishu-builder added this pull request to stack #283 September 24, 2026 02:11
@nishu-builder
nishu-builder force-pushed the codex/git-tree-tools-20260924-70793d branch from 3ea5374 to dab3352 Compare September 24, 2026 17:45

@nishu-builder nishu-builder left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parsimony review. Both new primitives duplicate existing ones: merge-tree duplicates std/merge, and commit-tree duplicates caos put-commit. Details inline. See also the #278 review on whether these need to be model-facing tools at all.


Generated by Claude Code

Comment thread rust/crates/server/src/git_objects.rs
Comment thread rust/crates/caos/src/git_objects.rs Outdated
@nishu-builder
nishu-builder force-pushed the codex/git-tree-tools-20260924-70793d branch from dab3352 to 75bae9e Compare September 25, 2026 06:02
@nishu-builder nishu-builder changed the title Merge trees and create commits without a checkout Share tree merging through the server Sep 25, 2026

Copy link
Copy Markdown
Contributor Author

Closing: most of what this was for is already on main. std/merge no longer clones a repository; it does a --filter=tree:0 fetch and lazily faults in only the trees merge-tree touches, and #296 added the explicit merge-base. The new git-merge-tree / git-commit-tree entries only served the replay stack (#282), which is closed as superseded.


Generated by Claude Code

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant