git-chopstick-core 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +324 -32
- package/dist/git/add.d.ts +9 -0
- package/dist/git/add.js +11 -0
- package/dist/git/add.js.map +1 -0
- package/dist/git/apply.d.ts +33 -0
- package/dist/git/apply.js +103 -0
- package/dist/git/apply.js.map +1 -0
- package/dist/git/authentication.d.ts +5 -0
- package/dist/git/authentication.js +19 -0
- package/dist/git/authentication.js.map +1 -0
- package/dist/git/branch.d.ts +43 -0
- package/dist/git/branch.js +150 -0
- package/dist/git/branch.js.map +1 -0
- package/dist/git/checkout-index.d.ts +19 -0
- package/dist/git/checkout-index.js +29 -0
- package/dist/git/checkout-index.js.map +1 -0
- package/dist/git/checkout.d.ts +46 -0
- package/dist/git/checkout.js +126 -0
- package/dist/git/checkout.js.map +1 -0
- package/dist/git/cherry-pick.d.ts +82 -0
- package/dist/git/cherry-pick.js +371 -0
- package/dist/git/cherry-pick.js.map +1 -0
- package/dist/git/clean.d.ts +5 -0
- package/dist/git/clean.js +8 -0
- package/dist/git/clean.js.map +1 -0
- package/dist/git/clone.d.ts +22 -0
- package/dist/git/clone.js +58 -0
- package/dist/git/clone.js.map +1 -0
- package/dist/git/coerce-to-buffer.d.ts +1 -0
- package/dist/git/coerce-to-buffer.js +2 -0
- package/dist/git/coerce-to-buffer.js.map +1 -0
- package/dist/git/coerce-to-string.d.ts +1 -0
- package/dist/git/coerce-to-string.js +2 -0
- package/dist/git/coerce-to-string.js.map +1 -0
- package/dist/git/commit.d.ts +25 -0
- package/dist/git/commit.js +99 -0
- package/dist/git/commit.js.map +1 -0
- package/dist/git/config.d.ts +98 -0
- package/dist/git/config.js +249 -0
- package/dist/git/config.js.map +1 -0
- package/dist/git/core.d.ts +167 -0
- package/dist/git/core.js +368 -0
- package/dist/git/core.js.map +1 -0
- package/dist/git/create-tail-stream.d.ts +4 -0
- package/dist/git/create-tail-stream.js +30 -0
- package/dist/git/create-tail-stream.js.map +1 -0
- package/dist/git/credential.d.ts +5 -0
- package/dist/git/credential.js +64 -0
- package/dist/git/credential.js.map +1 -0
- package/dist/git/description.d.ts +5 -0
- package/dist/git/description.js +24 -0
- package/dist/git/description.js.map +1 -0
- package/dist/git/diff-check.d.ts +7 -0
- package/dist/git/diff-check.js +17 -0
- package/dist/git/diff-check.js.map +1 -0
- package/dist/git/diff-index.d.ts +31 -0
- package/dist/git/diff-index.js +76 -0
- package/dist/git/diff-index.js.map +1 -0
- package/dist/git/diff.d.ts +81 -0
- package/dist/git/diff.js +611 -0
- package/dist/git/diff.js.map +1 -0
- package/dist/git/environment.d.ts +51 -0
- package/dist/git/environment.js +97 -0
- package/dist/git/environment.js.map +1 -0
- package/dist/git/exec.d.ts +109 -0
- package/dist/git/exec.js +224 -0
- package/dist/git/exec.js.map +1 -0
- package/dist/git/fetch.d.ts +25 -0
- package/dist/git/fetch.js +100 -0
- package/dist/git/fetch.js.map +1 -0
- package/dist/git/for-each-ref.d.ts +13 -0
- package/dist/git/for-each-ref.js +114 -0
- package/dist/git/for-each-ref.js.map +1 -0
- package/dist/git/format-patch.d.ts +10 -0
- package/dist/git/format-patch.js +16 -0
- package/dist/git/format-patch.js.map +1 -0
- package/dist/git/git-delimiter-parser.d.ts +38 -0
- package/dist/git/git-delimiter-parser.js +79 -0
- package/dist/git/git-delimiter-parser.js.map +1 -0
- package/dist/git/gitignore.d.ts +26 -0
- package/dist/git/gitignore.js +124 -0
- package/dist/git/gitignore.js.map +1 -0
- package/dist/git/index.d.ts +46 -0
- package/dist/git/index.js +47 -0
- package/dist/git/index.js.map +1 -0
- package/dist/git/init.d.ts +2 -0
- package/dist/git/init.js +7 -0
- package/dist/git/init.js.map +1 -0
- package/dist/git/interpret-trailers.d.ts +88 -0
- package/dist/git/interpret-trailers.js +130 -0
- package/dist/git/interpret-trailers.js.map +1 -0
- package/dist/git/lfs.d.ts +25 -0
- package/dist/git/lfs.js +73 -0
- package/dist/git/lfs.js.map +1 -0
- package/dist/git/log.d.ts +56 -0
- package/dist/git/log.js +258 -0
- package/dist/git/log.js.map +1 -0
- package/dist/git/merge-tree.d.ts +13 -0
- package/dist/git/merge-tree.js +24 -0
- package/dist/git/merge-tree.js.map +1 -0
- package/dist/git/merge.d.ts +50 -0
- package/dist/git/merge.js +111 -0
- package/dist/git/merge.js.map +1 -0
- package/dist/git/multi-operation-terminal-output.d.ts +20 -0
- package/dist/git/multi-operation-terminal-output.js +56 -0
- package/dist/git/multi-operation-terminal-output.js.map +1 -0
- package/dist/git/pull.d.ts +24 -0
- package/dist/git/pull.js +91 -0
- package/dist/git/pull.js.map +1 -0
- package/dist/git/push-terminal-chunk.d.ts +19 -0
- package/dist/git/push-terminal-chunk.js +36 -0
- package/dist/git/push-terminal-chunk.js.map +1 -0
- package/dist/git/push.d.ts +42 -0
- package/dist/git/push.js +80 -0
- package/dist/git/push.js.map +1 -0
- package/dist/git/rebase.d.ts +119 -0
- package/dist/git/rebase.js +415 -0
- package/dist/git/rebase.js.map +1 -0
- package/dist/git/reflog.d.ts +14 -0
- package/dist/git/reflog.js +88 -0
- package/dist/git/reflog.js.map +1 -0
- package/dist/git/refs.d.ts +26 -0
- package/dist/git/refs.js +53 -0
- package/dist/git/refs.js.map +1 -0
- package/dist/git/remote.d.ts +31 -0
- package/dist/git/remote.js +81 -0
- package/dist/git/remote.js.map +1 -0
- package/dist/git/reorder.d.ts +23 -0
- package/dist/git/reorder.js +111 -0
- package/dist/git/reorder.js.map +1 -0
- package/dist/git/reset.d.ts +41 -0
- package/dist/git/reset.js +86 -0
- package/dist/git/reset.js.map +1 -0
- package/dist/git/rev-list.d.ts +67 -0
- package/dist/git/rev-list.js +157 -0
- package/dist/git/rev-list.js.map +1 -0
- package/dist/git/rev-parse.d.ts +24 -0
- package/dist/git/rev-parse.js +65 -0
- package/dist/git/rev-parse.js.map +1 -0
- package/dist/git/revert.d.ts +12 -0
- package/dist/git/revert.js +30 -0
- package/dist/git/revert.js.map +1 -0
- package/dist/git/rm.d.ts +12 -0
- package/dist/git/rm.js +22 -0
- package/dist/git/rm.js.map +1 -0
- package/dist/git/show.d.ts +42 -0
- package/dist/git/show.js +59 -0
- package/dist/git/show.js.map +1 -0
- package/dist/git/spawn.d.ts +18 -0
- package/dist/git/spawn.js +16 -0
- package/dist/git/spawn.js.map +1 -0
- package/dist/git/squash.d.ts +28 -0
- package/dist/git/squash.js +127 -0
- package/dist/git/squash.js.map +1 -0
- package/dist/git/stage.d.ts +21 -0
- package/dist/git/stage.js +72 -0
- package/dist/git/stage.js.map +1 -0
- package/dist/git/stash.d.ts +53 -0
- package/dist/git/stash.js +204 -0
- package/dist/git/stash.js.map +1 -0
- package/dist/git/status.d.ts +39 -0
- package/dist/git/status.js +293 -0
- package/dist/git/status.js.map +1 -0
- package/dist/git/submodule.d.ts +20 -0
- package/dist/git/submodule.js +153 -0
- package/dist/git/submodule.js.map +1 -0
- package/dist/git/tag.d.ts +32 -0
- package/dist/git/tag.js +101 -0
- package/dist/git/tag.js.map +1 -0
- package/dist/git/update-index.d.ts +11 -0
- package/dist/git/update-index.js +99 -0
- package/dist/git/update-index.js.map +1 -0
- package/dist/git/update-ref.d.ts +23 -0
- package/dist/git/update-ref.js +32 -0
- package/dist/git/update-ref.js.map +1 -0
- package/dist/git/var.d.ts +18 -0
- package/dist/git/var.js +33 -0
- package/dist/git/var.js.map +1 -0
- package/dist/git/worktree-include.d.ts +42 -0
- package/dist/git/worktree-include.js +109 -0
- package/dist/git/worktree-include.js.map +1 -0
- package/dist/git/worktree.d.ts +25 -0
- package/dist/git/worktree.js +139 -0
- package/dist/git/worktree.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/api.d.ts +2 -0
- package/dist/lib/api.js +7 -0
- package/dist/lib/api.js.map +1 -0
- package/dist/lib/diff-parser.d.ts +20 -0
- package/dist/lib/diff-parser.js +184 -0
- package/dist/lib/diff-parser.js.map +1 -0
- package/dist/lib/directory-exists.d.ts +1 -0
- package/dist/lib/directory-exists.js +11 -0
- package/dist/lib/directory-exists.js.map +1 -0
- package/dist/lib/errno-exception.d.ts +6 -0
- package/dist/lib/errno-exception.js +6 -0
- package/dist/lib/errno-exception.js.map +1 -0
- package/dist/lib/fatal-error.d.ts +4 -0
- package/dist/lib/fatal-error.js +18 -0
- package/dist/lib/fatal-error.js.map +1 -0
- package/dist/lib/feature-flag.d.ts +14 -0
- package/dist/lib/feature-flag.js +25 -0
- package/dist/lib/feature-flag.js.map +1 -0
- package/dist/lib/file-system.d.ts +1 -0
- package/dist/lib/file-system.js +7 -0
- package/dist/lib/file-system.js.map +1 -0
- package/dist/lib/get-old-path.d.ts +2 -0
- package/dist/lib/get-old-path.js +9 -0
- package/dist/lib/get-old-path.js.map +1 -0
- package/dist/lib/git/environment.d.ts +3 -0
- package/dist/lib/git/environment.js +7 -0
- package/dist/lib/git/environment.js.map +1 -0
- package/dist/lib/git-perf.d.ts +1 -0
- package/dist/lib/git-perf.js +4 -0
- package/dist/lib/git-perf.js.map +1 -0
- package/dist/lib/helpers/default-branch.d.ts +1 -0
- package/dist/lib/helpers/default-branch.js +4 -0
- package/dist/lib/helpers/default-branch.js.map +1 -0
- package/dist/lib/helpers/path.d.ts +1 -0
- package/dist/lib/helpers/path.js +5 -0
- package/dist/lib/helpers/path.js.map +1 -0
- package/dist/lib/hooks/with-hooks-env.d.ts +3 -0
- package/dist/lib/hooks/with-hooks-env.js +4 -0
- package/dist/lib/hooks/with-hooks-env.js.map +1 -0
- package/dist/lib/merge.d.ts +1 -0
- package/dist/lib/merge.js +4 -0
- package/dist/lib/merge.js.map +1 -0
- package/dist/lib/noop.d.ts +1 -0
- package/dist/lib/noop.js +2 -0
- package/dist/lib/noop.js.map +1 -0
- package/dist/lib/patch-formatter.d.ts +5 -0
- package/dist/lib/patch-formatter.js +7 -0
- package/dist/lib/patch-formatter.js.map +1 -0
- package/dist/lib/path-exists.d.ts +1 -0
- package/dist/lib/path-exists.js +3 -0
- package/dist/lib/path-exists.js.map +1 -0
- package/dist/lib/progress/from-process.d.ts +2 -0
- package/dist/lib/progress/from-process.js +4 -0
- package/dist/lib/progress/from-process.js.map +1 -0
- package/dist/lib/progress/index.d.ts +49 -0
- package/dist/lib/progress/index.js +32 -0
- package/dist/lib/progress/index.js.map +1 -0
- package/dist/lib/progress/revert.d.ts +8 -0
- package/dist/lib/progress/revert.js +15 -0
- package/dist/lib/progress/revert.js.map +1 -0
- package/dist/lib/rebase.d.ts +1 -0
- package/dist/lib/rebase.js +4 -0
- package/dist/lib/rebase.js.map +1 -0
- package/dist/lib/remove-remote-prefix.d.ts +1 -0
- package/dist/lib/remove-remote-prefix.js +5 -0
- package/dist/lib/remove-remote-prefix.js.map +1 -0
- package/dist/lib/resolve-git-proxy.d.ts +1 -0
- package/dist/lib/resolve-git-proxy.js +4 -0
- package/dist/lib/resolve-git-proxy.js.map +1 -0
- package/dist/lib/round.d.ts +1 -0
- package/dist/lib/round.js +5 -0
- package/dist/lib/round.js.map +1 -0
- package/dist/lib/split-buffer.d.ts +1 -0
- package/dist/lib/split-buffer.js +15 -0
- package/dist/lib/split-buffer.js.map +1 -0
- package/dist/lib/status-parser.d.ts +19 -0
- package/dist/lib/status-parser.js +137 -0
- package/dist/lib/status-parser.js.map +1 -0
- package/dist/lib/stores/helpers/find-default-remote.d.ts +1 -0
- package/dist/lib/stores/helpers/find-default-remote.js +4 -0
- package/dist/lib/stores/helpers/find-default-remote.js.map +1 -0
- package/dist/lib/trampoline/trampoline-environment.d.ts +1 -0
- package/dist/lib/trampoline/trampoline-environment.js +4 -0
- package/dist/lib/trampoline/trampoline-environment.js.map +1 -0
- package/dist/models/branch.d.ts +44 -0
- package/dist/models/branch.js +59 -0
- package/dist/models/branch.js.map +1 -0
- package/dist/models/cherry-pick.d.ts +11 -0
- package/dist/models/cherry-pick.js +2 -0
- package/dist/models/cherry-pick.js.map +1 -0
- package/dist/models/clone-options.d.ts +6 -0
- package/dist/models/clone-options.js +2 -0
- package/dist/models/clone-options.js.map +1 -0
- package/dist/models/commit-identity.d.ts +9 -0
- package/dist/models/commit-identity.js +34 -0
- package/dist/models/commit-identity.js.map +1 -0
- package/dist/models/commit.d.ts +30 -0
- package/dist/models/commit.js +32 -0
- package/dist/models/commit.js.map +1 -0
- package/dist/models/computed-action.d.ts +6 -0
- package/dist/models/computed-action.js +8 -0
- package/dist/models/computed-action.js.map +1 -0
- package/dist/models/diff/diff-data.d.ts +53 -0
- package/dist/models/diff/diff-data.js +19 -0
- package/dist/models/diff/diff-data.js.map +1 -0
- package/dist/models/diff/diff-line.d.ts +18 -0
- package/dist/models/diff/diff-line.js +33 -0
- package/dist/models/diff/diff-line.js.map +1 -0
- package/dist/models/diff/diff-selection.d.ts +22 -0
- package/dist/models/diff/diff-selection.js +127 -0
- package/dist/models/diff/diff-selection.js.map +1 -0
- package/dist/models/diff/image-diff.d.ts +6 -0
- package/dist/models/diff/image-diff.js +8 -0
- package/dist/models/diff/image-diff.js.map +1 -0
- package/dist/models/diff/image.d.ts +7 -0
- package/dist/models/diff/image.js +13 -0
- package/dist/models/diff/image.js.map +1 -0
- package/dist/models/diff/index.d.ts +6 -0
- package/dist/models/diff/index.js +7 -0
- package/dist/models/diff/index.js.map +1 -0
- package/dist/models/diff/raw-diff.d.ts +32 -0
- package/dist/models/diff/raw-diff.js +38 -0
- package/dist/models/diff/raw-diff.js.map +1 -0
- package/dist/models/git-author.d.ts +7 -0
- package/dist/models/git-author.js +18 -0
- package/dist/models/git-author.js.map +1 -0
- package/dist/models/index.d.ts +21 -0
- package/dist/models/index.js +20 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/manual-conflict-resolution.d.ts +4 -0
- package/dist/models/manual-conflict-resolution.js +6 -0
- package/dist/models/manual-conflict-resolution.js.map +1 -0
- package/dist/models/merge.d.ts +6 -0
- package/dist/models/merge.js +2 -0
- package/dist/models/merge.js.map +1 -0
- package/dist/models/multi-commit-operation.d.ts +6 -0
- package/dist/models/multi-commit-operation.js +8 -0
- package/dist/models/multi-commit-operation.js.map +1 -0
- package/dist/models/progress.d.ts +41 -0
- package/dist/models/progress.js +7 -0
- package/dist/models/progress.js.map +1 -0
- package/dist/models/rebase.d.ts +17 -0
- package/dist/models/rebase.js +8 -0
- package/dist/models/rebase.js.map +1 -0
- package/dist/models/remote.d.ts +5 -0
- package/dist/models/remote.js +8 -0
- package/dist/models/remote.js.map +1 -0
- package/dist/models/repository.d.ts +7 -0
- package/dist/models/repository.js +15 -0
- package/dist/models/repository.js.map +1 -0
- package/dist/models/stash-entry.d.ts +20 -0
- package/dist/models/stash-entry.js +7 -0
- package/dist/models/stash-entry.js.map +1 -0
- package/dist/models/status.d.ts +166 -0
- package/dist/models/status.js +135 -0
- package/dist/models/status.js.map +1 -0
- package/dist/models/submodule.d.ts +12 -0
- package/dist/models/submodule.js +2 -0
- package/dist/models/submodule.js.map +1 -0
- package/dist/models/worktree.d.ts +10 -0
- package/dist/models/worktree.js +2 -0
- package/dist/models/worktree.js.map +1 -0
- package/package.json +13 -4
- package/src/git/add.ts +3 -3
- package/src/git/apply.ts +8 -8
- package/src/git/authentication.ts +3 -2
- package/src/git/branch.ts +10 -10
- package/src/git/checkout-index.ts +2 -2
- package/src/git/checkout.ts +12 -12
- package/src/git/cherry-pick.ts +16 -16
- package/src/git/clean.ts +2 -2
- package/src/git/clone.ts +6 -6
- package/src/git/commit.ts +7 -7
- package/src/git/config.ts +2 -2
- package/src/git/core.ts +8 -8
- package/src/git/credential.ts +1 -1
- package/src/git/diff-check.ts +1 -1
- package/src/git/diff-index.ts +2 -2
- package/src/git/diff.ts +18 -18
- package/src/git/environment.ts +5 -5
- package/src/git/fetch.ts +7 -7
- package/src/git/for-each-ref.ts +5 -5
- package/src/git/format-patch.ts +3 -3
- package/src/git/git-delimiter-parser.ts +1 -1
- package/src/git/gitignore.ts +2 -2
- package/src/git/index.ts +46 -36
- package/src/git/init.ts +2 -2
- package/src/git/interpret-trailers.ts +3 -3
- package/src/git/lfs.ts +2 -2
- package/src/git/log.ts +8 -8
- package/src/git/merge-tree.ts +5 -5
- package/src/git/merge.ts +5 -5
- package/src/git/multi-operation-terminal-output.ts +3 -3
- package/src/git/pull.ts +7 -7
- package/src/git/push-terminal-chunk.ts +1 -1
- package/src/git/push.ts +7 -7
- package/src/git/rebase.ts +16 -16
- package/src/git/reflog.ts +2 -2
- package/src/git/refs.ts +2 -2
- package/src/git/remote.ts +6 -6
- package/src/git/reorder.ts +7 -7
- package/src/git/reset.ts +3 -3
- package/src/git/rev-list.ts +5 -5
- package/src/git/rev-parse.ts +2 -2
- package/src/git/revert.ts +8 -8
- package/src/git/rm.ts +3 -3
- package/src/git/show.ts +4 -4
- package/src/git/spawn.ts +3 -3
- package/src/git/squash.ts +7 -7
- package/src/git/stage.ts +7 -7
- package/src/git/stash.ts +10 -10
- package/src/git/status.ts +13 -13
- package/src/git/submodule.ts +9 -9
- package/src/git/tag.ts +4 -4
- package/src/git/update-index.ts +5 -5
- package/src/git/update-ref.ts +2 -2
- package/src/git/var.ts +3 -3
- package/src/git/worktree-include.ts +3 -3
- package/src/git/worktree.ts +4 -4
- package/src/index.ts +9 -21
- package/src/lib/diff-parser.ts +2 -2
- package/src/lib/get-old-path.ts +1 -1
- package/src/lib/git/environment.ts +1 -1
- package/src/lib/patch-formatter.ts +3 -3
- package/src/lib/progress/from-process.ts +1 -1
- package/src/lib/progress/index.ts +1 -1
- package/src/lib/status-parser.ts +2 -2
- package/src/models/branch.ts +1 -1
- package/src/models/cherry-pick.ts +2 -2
- package/src/models/commit.ts +1 -1
- package/src/models/diff/diff-data.ts +3 -3
- package/src/models/diff/index.ts +6 -6
- package/src/models/diff/raw-diff.ts +1 -1
- package/src/models/index.ts +36 -0
- package/src/models/rebase.ts +2 -2
- package/src/models/stash-entry.ts +1 -1
- package/src/models/status.ts +1 -1
- package/examples/get-status.ts +0 -84
- package/tsconfig.json +0 -17
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { git } from './core.js';
|
|
2
|
+
/**
|
|
3
|
+
* Possible statuses of an entry in Git, see the git diff-index
|
|
4
|
+
* man page for additional details.
|
|
5
|
+
*/
|
|
6
|
+
export var IndexStatus;
|
|
7
|
+
(function (IndexStatus) {
|
|
8
|
+
IndexStatus[IndexStatus["Unknown"] = 0] = "Unknown";
|
|
9
|
+
IndexStatus[IndexStatus["Added"] = 1] = "Added";
|
|
10
|
+
IndexStatus[IndexStatus["Copied"] = 2] = "Copied";
|
|
11
|
+
IndexStatus[IndexStatus["Deleted"] = 3] = "Deleted";
|
|
12
|
+
IndexStatus[IndexStatus["Modified"] = 4] = "Modified";
|
|
13
|
+
IndexStatus[IndexStatus["Renamed"] = 5] = "Renamed";
|
|
14
|
+
IndexStatus[IndexStatus["TypeChanged"] = 6] = "TypeChanged";
|
|
15
|
+
IndexStatus[IndexStatus["Unmerged"] = 7] = "Unmerged";
|
|
16
|
+
})(IndexStatus || (IndexStatus = {}));
|
|
17
|
+
function getIndexStatus(status) {
|
|
18
|
+
switch (status[0]) {
|
|
19
|
+
case 'A':
|
|
20
|
+
return IndexStatus.Added;
|
|
21
|
+
case 'C':
|
|
22
|
+
return IndexStatus.Copied;
|
|
23
|
+
case 'D':
|
|
24
|
+
return IndexStatus.Deleted;
|
|
25
|
+
case 'M':
|
|
26
|
+
return IndexStatus.Modified;
|
|
27
|
+
case 'R':
|
|
28
|
+
return IndexStatus.Renamed;
|
|
29
|
+
case 'T':
|
|
30
|
+
return IndexStatus.TypeChanged;
|
|
31
|
+
case 'U':
|
|
32
|
+
return IndexStatus.Unmerged;
|
|
33
|
+
case 'X':
|
|
34
|
+
return IndexStatus.Unknown;
|
|
35
|
+
default:
|
|
36
|
+
throw new Error(`Unknown index status: ${status}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function getNoRenameIndexStatus(status) {
|
|
40
|
+
const parsed = getIndexStatus(status);
|
|
41
|
+
switch (parsed) {
|
|
42
|
+
case IndexStatus.Copied:
|
|
43
|
+
case IndexStatus.Renamed:
|
|
44
|
+
throw new Error(`Invalid index status for no-rename index status: ${parsed}`);
|
|
45
|
+
}
|
|
46
|
+
return parsed;
|
|
47
|
+
}
|
|
48
|
+
/** The SHA for the null tree. */
|
|
49
|
+
export const NullTreeSHA = '4b825dc642cb6eb9a060e54bf8d69288fbee4904';
|
|
50
|
+
/**
|
|
51
|
+
* Get a list of files which have recorded changes in the index as compared to
|
|
52
|
+
* HEAD along with the type of change.
|
|
53
|
+
*
|
|
54
|
+
* @param repository The repository for which to retrieve the index changes.
|
|
55
|
+
*/
|
|
56
|
+
export async function getIndexChanges(repository) {
|
|
57
|
+
const args = ['diff-index', '--cached', '--name-status', '--no-renames', '-z'];
|
|
58
|
+
let result = await git([...args, 'HEAD', '--'], repository.path, 'getIndexChanges', {
|
|
59
|
+
successExitCodes: new Set([0, 128]),
|
|
60
|
+
});
|
|
61
|
+
// 128 from diff-index either means that the path isn't a repository or (more
|
|
62
|
+
// likely) that the repository HEAD is unborn. If HEAD is unborn we'll diff
|
|
63
|
+
// the index against the null tree instead.
|
|
64
|
+
if (result.exitCode === 128) {
|
|
65
|
+
result = await git([...args, NullTreeSHA], repository.path, 'getIndexChanges');
|
|
66
|
+
}
|
|
67
|
+
const map = new Map();
|
|
68
|
+
const pieces = result.stdout.split('\0');
|
|
69
|
+
for (let i = 0; i < pieces.length - 1; i += 2) {
|
|
70
|
+
const status = getNoRenameIndexStatus(pieces[i]);
|
|
71
|
+
const path = pieces[i + 1];
|
|
72
|
+
map.set(path, status);
|
|
73
|
+
}
|
|
74
|
+
return map;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=diff-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diff-index.js","sourceRoot":"","sources":["../../src/git/diff-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Repository } from '../models/repository.js';
|
|
2
|
+
import { WorkingDirectoryFileChange, FileChange } from '../models/status.js';
|
|
3
|
+
import { IRawDiff, IDiff, Image, LineEndingsChange } from '../models/diff/index.js';
|
|
4
|
+
import { IChangesetData } from './log.js';
|
|
5
|
+
import { IStatusEntry } from '../lib/status-parser.js';
|
|
6
|
+
/**
|
|
7
|
+
* Render the difference between a file in the given commit and its parent
|
|
8
|
+
*
|
|
9
|
+
* @param commitish A commit SHA or some other identifier that ultimately dereferences
|
|
10
|
+
* to a commit.
|
|
11
|
+
*/
|
|
12
|
+
export declare function getCommitDiff(repository: Repository, file: FileChange, commitish: string, hideWhitespaceInDiff?: boolean): Promise<IDiff>;
|
|
13
|
+
/**
|
|
14
|
+
* Render the diff between two branches with --merge-base for a file
|
|
15
|
+
* (Show what would be the result of merge)
|
|
16
|
+
*/
|
|
17
|
+
export declare function getBranchMergeBaseDiff(repository: Repository, file: FileChange, baseBranchName: string, comparisonBranchName: string, hideWhitespaceInDiff: boolean | undefined, latestCommit: string): Promise<IDiff>;
|
|
18
|
+
/**
|
|
19
|
+
* Render the difference between two commits for a file
|
|
20
|
+
*
|
|
21
|
+
*/
|
|
22
|
+
export declare function getCommitRangeDiff(repository: Repository, file: FileChange, commits: ReadonlyArray<string>, hideWhitespaceInDiff?: boolean, useNullTreeSHA?: boolean): Promise<IDiff>;
|
|
23
|
+
/**
|
|
24
|
+
* Get the files that were changed for the merge base comparison of two branches.
|
|
25
|
+
* (What would be the result of a merge)
|
|
26
|
+
*/
|
|
27
|
+
export declare function getBranchMergeBaseChangedFiles(repository: Repository, baseBranchName: string, comparisonBranchName: string, latestComparisonBranchCommitRef: string): Promise<IChangesetData | null>;
|
|
28
|
+
export declare function getCommitRangeChangedFiles(repository: Repository, shas: ReadonlyArray<string>, useNullTreeSHA?: boolean): Promise<IChangesetData>;
|
|
29
|
+
/**
|
|
30
|
+
* Render the diff for a file within the repository working directory. The file will be
|
|
31
|
+
* compared against HEAD if it's tracked, if not it'll be compared to an empty file meaning
|
|
32
|
+
* that all content in the file will be treated as additions.
|
|
33
|
+
*/
|
|
34
|
+
export declare function getWorkingDirectoryDiff(repository: Repository, file: WorkingDirectoryFileChange, hideWhitespaceInDiff?: boolean): Promise<IDiff>;
|
|
35
|
+
/**
|
|
36
|
+
* Render the diff for a list of files within the repository working directory.
|
|
37
|
+
* The files will be compared against HEAD if it's tracked, if not it'll be
|
|
38
|
+
* compared to an empty file meaning that all content in the file will be
|
|
39
|
+
* treated as additions.
|
|
40
|
+
*
|
|
41
|
+
* @param repository The repository to get the diff for
|
|
42
|
+
* @param files The list of files to get the diff for
|
|
43
|
+
* @param commitish The commitish to compare against, if not provided it will
|
|
44
|
+
* default to HEAD. Mainly used to get a diff that includes
|
|
45
|
+
* both staged changes and the changes in a commit. For example,
|
|
46
|
+
* when the user is amending a commit and wants to generate
|
|
47
|
+
* a commit message based on both the new changes and the
|
|
48
|
+
* changes in the commit.
|
|
49
|
+
*/
|
|
50
|
+
export declare function getFilesDiffText(repository: Repository, files: ReadonlyArray<WorkingDirectoryFileChange>, commitish?: string): Promise<string>;
|
|
51
|
+
export declare function convertDiff(repository: Repository, file: FileChange, diff: IRawDiff, newestCommitish: string, oldestCommitish: string, lineEndingsChange?: LineEndingsChange): Promise<IDiff>;
|
|
52
|
+
/**
|
|
53
|
+
* Retrieve the binary contents of a blob from the object database
|
|
54
|
+
*
|
|
55
|
+
* Returns an image object containing the base64 encoded string,
|
|
56
|
+
* as <img> tags support the data URI scheme instead of
|
|
57
|
+
* needing to reference a file:// URI
|
|
58
|
+
*
|
|
59
|
+
* https://en.wikipedia.org/wiki/Data_URI_scheme
|
|
60
|
+
*/
|
|
61
|
+
export declare function getBlobImage(repository: Repository, path: string, commitish: string): Promise<Image>;
|
|
62
|
+
/**
|
|
63
|
+
* Retrieve the binary contents of a blob from the working directory
|
|
64
|
+
*
|
|
65
|
+
* Returns an image object containing the base64 encoded string,
|
|
66
|
+
* as <img> tags support the data URI scheme instead of
|
|
67
|
+
* needing to reference a file:// URI
|
|
68
|
+
*
|
|
69
|
+
* https://en.wikipedia.org/wiki/Data_URI_scheme
|
|
70
|
+
*/
|
|
71
|
+
export declare function getWorkingDirectoryImage(repository: Repository, file: FileChange): Promise<Image>;
|
|
72
|
+
/**
|
|
73
|
+
* List the modified binary files' paths in the given repository
|
|
74
|
+
*
|
|
75
|
+
* @param repository to run git operation in
|
|
76
|
+
* @param ref ref (sha, branch, etc) to compare the working index against
|
|
77
|
+
*
|
|
78
|
+
* if you're mid-merge pass `'MERGE_HEAD'` to ref to get a diff of `HEAD` vs `MERGE_HEAD`,
|
|
79
|
+
* otherwise you should probably pass `'HEAD'` to get a diff of the working tree vs `HEAD`
|
|
80
|
+
*/
|
|
81
|
+
export declare function getBinaryPaths(repository: Repository, ref: string, conflictedFilesInIndex: ReadonlyArray<IStatusEntry>): Promise<ReadonlyArray<string>>;
|