Files
orca/src/main/git/status.ts
T
Kelvin Amoaba dc99281085 feat(source-control): resolve merge conflicts and complete merges from the phone (#36160)
* feat(source-control): resolve conflicts with one host operation shared by desktop and mobile

* feat(mobile): resolve merge conflicts and complete merges from Source Control

* test(mobile): pin Complete merge refusals and the older-desktop message

* fix(source-control): only resolve paths Git still reports as conflicted

* fix(source-control): refuse to keep a missing file and serialize conflict resolution per worktree

* fix(source-control): resolve only the exact conflicted path

* fix(source-control): match conflicted paths in Git's separator form on Windows and WSL

* fix(source-control): accept only the resolutions the live conflict offers

* fix(source-control): refuse to keep a both-modified file that is gone from disk

* feat(mobile): translate the merge conflict actions

* test(runtime): keep the mobile allowlist test under its line cap

* fix(mobile): let VoiceOver reach conflict action buttons
2026-10-30 03:18:48 +00:00

48 lines
1.8 KiB
TypeScript

// Preserve the source-control import/mocking entry point; implementation lives in source-control.
export { getStatus } from './source-control/status-read'
export type { GetStatusOptions } from './source-control/get-status-options'
export { getSubmoduleStatus } from './source-control/submodule-status'
export {
MAX_SUBMODULE_PATHS_CACHE_ENTRIES,
clearSubmodulePathsCacheForTests,
getSubmodulePathsCacheCountForTests,
listSubmodulePaths,
resolveSubmoduleWorktreePath
} from './source-control/submodule-paths'
export {
invalidateGitReadCaches,
runWithGitReadCacheInvalidation
} from './source-control/git-read-cache-invalidation'
export {
clearEffectiveUpstreamNegativeStatusCache,
clearEffectiveUpstreamStatusCacheForTests,
getEffectiveUpstreamStatusCacheCountForTests,
getEffectiveUpstreamStatusGenerationCountForTests
} from './source-control/effective-upstream-status-cache'
export {
abortMerge,
abortRebase,
detectConflictOperation
} from './source-control/git-conflict-operation'
export { resolveGitDir } from './source-control/resolve-git-dir'
export { getDiff } from './source-control/file-diff'
export { getBranchCompare } from './source-control/branch-compare'
export { getBranchDiff } from './source-control/branch-diff'
export { getCommitCompare } from './source-control/commit-compare'
export { getCommitDiff } from './source-control/commit-diff'
export {
bulkStageFiles,
bulkUnstageFiles,
resolveConflict,
stageFile,
stageWorktreeChanges,
unstageFile
} from './source-control/staging'
export { getStagedCommitContext } from './source-control/staged-commit-context'
export { commitChanges, completeMerge } from './source-control/commit-changes'
export {
bulkDiscardChanges,
discardChanges,
isWithinWorktree
} from './source-control/discard-changes'