mirror of
https://github.com/openai/codex.git
synced 2026-09-06 15:29:32 +00:00
## What changed - Add `WorktreeManager::create` to create detached, Desktop-compatible worktrees from `HEAD` or an explicit base while preserving the source working-directory path. - Isolate worktree Git operations from inherited repository selectors, hooks, filesystem monitors, and configured content filters. - Validate the destination working directory and roll back incomplete worktrees and empty allocation buckets on failure. ## Testing - Cover layout, base selection, annotated tags, nested working directories, Git environment isolation, filter suppression, source checkout preservation, unsafe symlinks, and creation rollback. GitOrigin-RevId: bf172c3ff4268dab603d00a1d547485fcd0de368
54 lines
1.7 KiB
Rust
54 lines
1.7 KiB
Rust
mod apply;
|
|
mod baseline;
|
|
mod branch;
|
|
mod errors;
|
|
mod fsmonitor;
|
|
mod git_process;
|
|
mod info;
|
|
mod operations;
|
|
mod platform;
|
|
mod status;
|
|
mod trust;
|
|
|
|
/// Git configuration that rejects implicitly discovered bare repositories while
|
|
/// preserving repositories selected explicitly through `GIT_DIR` or `--git-dir`.
|
|
pub const SAFE_BARE_REPOSITORY_CONFIG: &str = "safe.bareRepository=explicit";
|
|
|
|
pub use apply::ApplyGitRequest;
|
|
pub use apply::ApplyGitResult;
|
|
pub use apply::apply_git_patch;
|
|
pub use apply::extract_paths_from_patch;
|
|
pub use apply::parse_git_apply_output;
|
|
pub use apply::stage_paths;
|
|
pub use baseline::GitBaselineChange;
|
|
pub use baseline::GitBaselineChangeStatus;
|
|
pub use baseline::GitBaselineDiff;
|
|
pub use baseline::diff_since_latest_init;
|
|
pub use baseline::ensure_git_baseline_repository;
|
|
pub use baseline::reset_git_repository;
|
|
pub use branch::merge_base_with_head;
|
|
pub use codex_protocol::SanitizedGitUrl;
|
|
pub use codex_protocol::protocol::GitSha;
|
|
pub use errors::GitToolingError;
|
|
pub use fsmonitor::FsmonitorOverride;
|
|
pub use fsmonitor::FsmonitorProbeRunner;
|
|
pub use fsmonitor::detect_fsmonitor_override;
|
|
pub use info::CommitLogEntry;
|
|
pub use info::GitDiffToRemote;
|
|
pub use info::GitInfo;
|
|
pub use info::canonicalize_git_remote_url;
|
|
pub use info::collect_git_info;
|
|
pub use info::current_branch_name;
|
|
pub use info::default_branch_name;
|
|
pub use info::get_git_remote_urls;
|
|
pub use info::get_git_remote_urls_assume_git_repo;
|
|
pub use info::get_git_repo_root;
|
|
pub use info::get_head_commit_hash;
|
|
pub use info::git_diff_to_remote;
|
|
pub use info::local_git_branches;
|
|
pub use info::recent_commits;
|
|
pub use operations::git_config_override_env;
|
|
pub use platform::create_symlink;
|
|
pub use status::get_has_changes_in_repo;
|
|
pub use trust::resolve_root_git_project_for_trust;
|