Skip to main content

Module git_core

Module git_core 

Source
Expand description

Core Git bridge types and operations.

Structs§

GitBridge
Git bridge for Heddle repository.
GitPullOutcome
NegativeRefSpec
ParsedGitRef
A parsed Git ref name: its kind, short name, and owning remote. Borrows from the input ref name. Ported from jj’s RemoteRefSymbol shape (lib/src/git.rs).
RefSpec
SyncMapping
Mapping between Heddle ChangeIds and Git commit object IDs.

Enums§

GitBridgeError
Errors specific to Git bridge operations.
GitPushScope
GitRefKind
The kind of Git ref parse_git_ref recognizes. Ported from jj’s GitRefKind (lib/src/git.rs).
WriteThroughOutcome
WriteThroughSkipReason

Constants§

REMOTE_NAME_FOR_LOCAL_GIT_REPO
Sentinel remote name for refs owned by the local repository (refs/heads/* and refs/tags/*). Ported from jj’s REMOTE_NAME_FOR_LOCAL_GIT_REPO (lib/src/git.rs). Because a remote literally named git would collide with this sentinel, such a name must be rejected when remotes are configured.

Functions§

clone_url_to_bare
Clone a remote git URL into dest as a bare repository, fetching all branches and tags. Mirrors the sley remote fetch path used by fetch_network_remote but starts from an empty init_bare rather than an existing repo.
copy_local_repo_to_bare
Copy a local Git repository into a bare repository without invoking Git transport helpers. This is the local-path clone fast path used by the OSS Git-overlay workflow when the user does not have git installed.
parse_git_ref
Parse a fully-qualified Git ref name into its GitRefKind, short name, and owning remote. Returns None for refs outside the branch/remote-branch/tag namespaces (e.g. refs/notes/*, HEAD).

Type Aliases§

GitResult
Type alias for Git bridge results.