git-chopstick-core 0.1.1 → 0.1.3
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/{src/git/checkout-index.ts → dist/git/checkout-index.js} +11 -22
- 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/{src/git/interpret-trailers.ts → dist/git/interpret-trailers.d.ts} +9 -97
- 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/{src/git/push-terminal-chunk.ts → dist/git/push-terminal-chunk.d.ts} +1 -23
- 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/{src/git/show.ts → dist/git/show.js} +17 -46
- 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/{src/git/update-ref.ts → dist/git/update-ref.js} +10 -28
- package/dist/git/update-ref.js.map +1 -0
- package/dist/git/var.d.ts +18 -0
- package/{src/git/var.ts → dist/git/var.js} +16 -25
- 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 +125 -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 +44 -5
- package/examples/get-status.ts +0 -84
- package/src/git/add.ts +0 -16
- package/src/git/apply.ts +0 -154
- package/src/git/authentication.ts +0 -19
- package/src/git/branch.ts +0 -206
- package/src/git/checkout.ts +0 -235
- package/src/git/cherry-pick.ts +0 -504
- package/src/git/clean.ts +0 -9
- package/src/git/clone.ts +0 -86
- package/src/git/coerce-to-buffer.ts +0 -4
- package/src/git/coerce-to-string.ts +0 -4
- package/src/git/commit.ts +0 -136
- package/src/git/config.ts +0 -392
- package/src/git/core.ts +0 -625
- package/src/git/create-tail-stream.ts +0 -36
- package/src/git/credential.ts +0 -83
- package/src/git/description.ts +0 -33
- package/src/git/diff-check.ts +0 -27
- package/src/git/diff-index.ts +0 -116
- package/src/git/diff.ts +0 -880
- package/src/git/environment.ts +0 -116
- package/src/git/exec.ts +0 -285
- package/src/git/fetch.ts +0 -141
- package/src/git/for-each-ref.ts +0 -160
- package/src/git/format-patch.ts +0 -17
- package/src/git/git-delimiter-parser.ts +0 -95
- package/src/git/gitignore.ts +0 -157
- package/src/git/index.ts +0 -36
- package/src/git/init.ts +0 -11
- package/src/git/lfs.ts +0 -100
- package/src/git/log.ts +0 -376
- package/src/git/merge-tree.ts +0 -42
- package/src/git/merge.ts +0 -154
- package/src/git/multi-operation-terminal-output.ts +0 -68
- package/src/git/pull.ts +0 -130
- package/src/git/push.ts +0 -119
- package/src/git/rebase.ts +0 -627
- package/src/git/reflog.ts +0 -127
- package/src/git/refs.ts +0 -63
- package/src/git/remote.ts +0 -143
- package/src/git/reorder.ts +0 -153
- package/src/git/reset.ts +0 -101
- package/src/git/rev-list.ts +0 -201
- package/src/git/rev-parse.ts +0 -92
- package/src/git/revert.ts +0 -55
- package/src/git/rm.ts +0 -31
- package/src/git/spawn.ts +0 -38
- package/src/git/squash.ts +0 -173
- package/src/git/stage.ts +0 -97
- package/src/git/stash.ts +0 -302
- package/src/git/status.ts +0 -502
- package/src/git/submodule.ts +0 -212
- package/src/git/tag.ts +0 -134
- package/src/git/update-index.ts +0 -169
- package/src/git/worktree-include.ts +0 -146
- package/src/git/worktree.ts +0 -219
- package/src/index.ts +0 -23
- package/src/lib/api.ts +0 -7
- package/src/lib/diff-parser.ts +0 -249
- package/src/lib/directory-exists.ts +0 -10
- package/src/lib/errno-exception.ts +0 -12
- package/src/lib/fatal-error.ts +0 -23
- package/src/lib/feature-flag.ts +0 -29
- package/src/lib/file-system.ts +0 -7
- package/src/lib/get-old-path.ts +0 -11
- package/src/lib/git/environment.ts +0 -14
- package/src/lib/git-perf.ts +0 -3
- package/src/lib/helpers/default-branch.ts +0 -3
- package/src/lib/helpers/path.ts +0 -5
- package/src/lib/hooks/with-hooks-env.ts +0 -7
- package/src/lib/merge.ts +0 -3
- package/src/lib/noop.ts +0 -1
- package/src/lib/patch-formatter.ts +0 -18
- package/src/lib/path-exists.ts +0 -7
- package/src/lib/progress/from-process.ts +0 -10
- package/src/lib/progress/index.ts +0 -43
- package/src/lib/progress/revert.ts +0 -17
- package/src/lib/rebase.ts +0 -3
- package/src/lib/remove-remote-prefix.ts +0 -4
- package/src/lib/resolve-git-proxy.ts +0 -3
- package/src/lib/round.ts +0 -4
- package/src/lib/split-buffer.ts +0 -14
- package/src/lib/status-parser.ts +0 -188
- package/src/lib/stores/helpers/find-default-remote.ts +0 -3
- package/src/lib/trampoline/trampoline-environment.ts +0 -8
- package/src/models/branch.ts +0 -78
- package/src/models/cherry-pick.ts +0 -12
- package/src/models/clone-options.ts +0 -6
- package/src/models/commit-identity.ts +0 -35
- package/src/models/commit.ts +0 -44
- package/src/models/computed-action.ts +0 -6
- package/src/models/diff/diff-data.ts +0 -78
- package/src/models/diff/diff-line.ts +0 -36
- package/src/models/diff/diff-selection.ts +0 -165
- package/src/models/diff/image-diff.ts +0 -6
- package/src/models/diff/image.ts +0 -8
- package/src/models/diff/index.ts +0 -6
- package/src/models/diff/raw-diff.ts +0 -41
- package/src/models/git-author.ts +0 -16
- package/src/models/manual-conflict-resolution.ts +0 -4
- package/src/models/merge.ts +0 -6
- package/src/models/multi-commit-operation.ts +0 -6
- package/src/models/progress.ts +0 -67
- package/src/models/rebase.ts +0 -20
- package/src/models/remote.ts +0 -10
- package/src/models/repository.ts +0 -16
- package/src/models/stash-entry.ts +0 -25
- package/src/models/status.ts +0 -275
- package/src/models/submodule.ts +0 -13
- package/src/models/worktree.ts +0 -11
- package/tsconfig.json +0 -17
package/src/git/pull.ts
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
git,
|
|
3
|
-
gitRebaseArguments,
|
|
4
|
-
HookProgress,
|
|
5
|
-
IGitStringExecutionOptions,
|
|
6
|
-
TerminalOutput,
|
|
7
|
-
TerminalOutputCallback,
|
|
8
|
-
} from './core'
|
|
9
|
-
import { Repository } from '../models/repository'
|
|
10
|
-
import { IPullProgress } from '../models/progress'
|
|
11
|
-
import { PullProgressParser, executionOptionsWithProgress } from '../lib/progress'
|
|
12
|
-
import { IRemote } from '../models/remote'
|
|
13
|
-
import { envForRemoteOperation } from './environment'
|
|
14
|
-
import { getConfigValue } from './config'
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Pull from the specified remote.
|
|
18
|
-
*
|
|
19
|
-
* @param repository - The repository in which the pull should take place
|
|
20
|
-
*
|
|
21
|
-
* @param remote - The name of the remote that should be pulled from
|
|
22
|
-
*
|
|
23
|
-
* @param progressCallback - An optional function which will be invoked
|
|
24
|
-
* with information about the current progress
|
|
25
|
-
* of the pull operation. When provided this enables
|
|
26
|
-
* the '--progress' command line flag for
|
|
27
|
-
* 'git pull'.
|
|
28
|
-
*/
|
|
29
|
-
export async function pull(
|
|
30
|
-
repository: Repository,
|
|
31
|
-
remote: IRemote,
|
|
32
|
-
options?: {
|
|
33
|
-
progressCallback?: (progress: IPullProgress) => void
|
|
34
|
-
onHookProgress?: (progress: HookProgress) => void
|
|
35
|
-
onHookFailure?: (
|
|
36
|
-
hookName: string,
|
|
37
|
-
terminalOutput: TerminalOutput
|
|
38
|
-
) => Promise<'abort' | 'ignore'>
|
|
39
|
-
onTerminalOutputAvailable?: TerminalOutputCallback
|
|
40
|
-
noVerify?: boolean
|
|
41
|
-
}
|
|
42
|
-
): Promise<void> {
|
|
43
|
-
let opts: IGitStringExecutionOptions = {
|
|
44
|
-
env: await envForRemoteOperation(remote.url),
|
|
45
|
-
// git pull triggers merge or rebase hooks depending on config, instead of
|
|
46
|
-
// trying to check pull.rebase and friends we'll just intercept all possible
|
|
47
|
-
// hooks that could be run as part of a pull operation.
|
|
48
|
-
interceptHooks: [
|
|
49
|
-
'pre-merge-commit',
|
|
50
|
-
'prepare-commit-msg',
|
|
51
|
-
'commit-msg',
|
|
52
|
-
'post-merge',
|
|
53
|
-
'pre-rebase',
|
|
54
|
-
'pre-commit',
|
|
55
|
-
'post-rewrite',
|
|
56
|
-
],
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
if (options?.progressCallback) {
|
|
60
|
-
const title = `Pulling ${remote.name}`
|
|
61
|
-
const kind = 'pull'
|
|
62
|
-
|
|
63
|
-
opts = await executionOptionsWithProgress(
|
|
64
|
-
{ ...opts, trackLFSProgress: true },
|
|
65
|
-
new PullProgressParser(),
|
|
66
|
-
progress => {
|
|
67
|
-
// In addition to progress output from the remote end and from
|
|
68
|
-
// git itself, the stderr output from pull contains information
|
|
69
|
-
// about ref updates. We don't need to bring those into the progress
|
|
70
|
-
// stream so we'll just punt on anything we don't know about for now.
|
|
71
|
-
if (progress.kind === 'context') {
|
|
72
|
-
if (!progress.text.startsWith('remote: Counting objects')) {
|
|
73
|
-
return
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const description =
|
|
78
|
-
progress.kind === 'progress' ? progress.details.text : progress.text
|
|
79
|
-
|
|
80
|
-
const value = progress.percent
|
|
81
|
-
|
|
82
|
-
options?.progressCallback?.({
|
|
83
|
-
kind,
|
|
84
|
-
title,
|
|
85
|
-
description,
|
|
86
|
-
value,
|
|
87
|
-
remote: remote.name,
|
|
88
|
-
})
|
|
89
|
-
}
|
|
90
|
-
)
|
|
91
|
-
|
|
92
|
-
// Initial progress
|
|
93
|
-
options.progressCallback({ kind, title, value: 0, remote: remote.name })
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
const args = [
|
|
97
|
-
...gitRebaseArguments(),
|
|
98
|
-
'pull',
|
|
99
|
-
...(await getDefaultPullDivergentBranchArguments(repository)),
|
|
100
|
-
'--recurse-submodules',
|
|
101
|
-
...(options?.progressCallback ? ['--progress'] : []),
|
|
102
|
-
...(options?.noVerify ? ['--no-verify'] : []),
|
|
103
|
-
remote.name,
|
|
104
|
-
]
|
|
105
|
-
|
|
106
|
-
await git(args, repository.path, 'pull', opts)
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* Defaults the pull default for divergent paths to try to fast forward and if
|
|
111
|
-
* not perform a merge. Aka uses the flag --ff
|
|
112
|
-
*
|
|
113
|
-
* It checks whether the user has a config set for this already, if so, no need for
|
|
114
|
-
* default.
|
|
115
|
-
*/
|
|
116
|
-
async function getDefaultPullDivergentBranchArguments(
|
|
117
|
-
repository: Repository
|
|
118
|
-
): Promise<ReadonlyArray<string>> {
|
|
119
|
-
try {
|
|
120
|
-
const pullFF = await getConfigValue(repository, 'pull.ff')
|
|
121
|
-
return pullFF !== null ? [] : ['--ff']
|
|
122
|
-
} catch (e) {
|
|
123
|
-
console.error("Couldn't read 'pull.ff' config", e)
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
// If there is a failure in checking the config, we still want to use any
|
|
127
|
-
// config and not overwrite the user's set config behavior. This will show the
|
|
128
|
-
// git error if no config is set.
|
|
129
|
-
return []
|
|
130
|
-
}
|
package/src/git/push.ts
DELETED
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { git, HookCallbackOptions, IGitStringExecutionOptions } from './core'
|
|
2
|
-
import { Repository } from '../models/repository'
|
|
3
|
-
import { IPushProgress } from '../models/progress'
|
|
4
|
-
import { PushProgressParser, executionOptionsWithProgress } from '../lib/progress'
|
|
5
|
-
import { IRemote } from '../models/remote'
|
|
6
|
-
import { envForRemoteOperation } from './environment'
|
|
7
|
-
import { Branch } from '../models/branch'
|
|
8
|
-
|
|
9
|
-
export type PushOptions = {
|
|
10
|
-
/**
|
|
11
|
-
* Force-push the branch without losing changes in the remote that
|
|
12
|
-
* haven't been fetched.
|
|
13
|
-
*
|
|
14
|
-
* See https://git-scm.com/docs/git-push#Documentation/git-push.txt---no-force-with-lease
|
|
15
|
-
*/
|
|
16
|
-
readonly forceWithLease?: boolean
|
|
17
|
-
|
|
18
|
-
/** A branch to push instead of the current branch */
|
|
19
|
-
readonly branch?: Branch
|
|
20
|
-
|
|
21
|
-
readonly noVerify?: boolean
|
|
22
|
-
} & HookCallbackOptions
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Push from the remote to the branch, optionally setting the upstream.
|
|
26
|
-
*
|
|
27
|
-
* @param repository - The repository from which to push
|
|
28
|
-
*
|
|
29
|
-
* @param account - The account to use when authenticating with the remote
|
|
30
|
-
*
|
|
31
|
-
* @param remote - The remote to push the specified branch to
|
|
32
|
-
*
|
|
33
|
-
* @param localBranch - The local branch to push
|
|
34
|
-
*
|
|
35
|
-
* @param remoteBranch - The remote branch to push to
|
|
36
|
-
*
|
|
37
|
-
* @param tagsToPush - The tags to push along with the branch.
|
|
38
|
-
*
|
|
39
|
-
* @param options - Optional customizations for the push execution.
|
|
40
|
-
* see PushOptions for more information.
|
|
41
|
-
*
|
|
42
|
-
* @param progressCallback - An optional function which will be invoked
|
|
43
|
-
* with information about the current progress
|
|
44
|
-
* of the push operation. When provided this enables
|
|
45
|
-
* the '--progress' command line flag for
|
|
46
|
-
* 'git push'.
|
|
47
|
-
*/
|
|
48
|
-
export async function push(
|
|
49
|
-
repository: Repository,
|
|
50
|
-
remote: IRemote,
|
|
51
|
-
localBranch: string,
|
|
52
|
-
remoteBranch: string | null,
|
|
53
|
-
tagsToPush: ReadonlyArray<string> | null,
|
|
54
|
-
options?: PushOptions,
|
|
55
|
-
progressCallback?: (progress: IPushProgress) => void
|
|
56
|
-
): Promise<void> {
|
|
57
|
-
const args = [
|
|
58
|
-
'push',
|
|
59
|
-
remote.name,
|
|
60
|
-
remoteBranch ? `${localBranch}:${remoteBranch}` : localBranch,
|
|
61
|
-
]
|
|
62
|
-
|
|
63
|
-
if (tagsToPush !== null) {
|
|
64
|
-
args.push(...tagsToPush)
|
|
65
|
-
}
|
|
66
|
-
if (!remoteBranch) {
|
|
67
|
-
args.push('--set-upstream')
|
|
68
|
-
} else if (options?.forceWithLease) {
|
|
69
|
-
args.push('--force-with-lease')
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
if (options?.noVerify) {
|
|
73
|
-
args.push('--no-verify')
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
let opts: IGitStringExecutionOptions = {
|
|
77
|
-
env: await envForRemoteOperation(remote.url),
|
|
78
|
-
interceptHooks: ['pre-push'],
|
|
79
|
-
onHookProgress: options?.onHookProgress,
|
|
80
|
-
onHookFailure: options?.onHookFailure,
|
|
81
|
-
onTerminalOutputAvailable: options?.onTerminalOutputAvailable,
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
if (progressCallback) {
|
|
85
|
-
args.push('--progress')
|
|
86
|
-
const title = `Pushing to ${remote.name}`
|
|
87
|
-
const kind = 'push'
|
|
88
|
-
|
|
89
|
-
opts = await executionOptionsWithProgress(
|
|
90
|
-
{ ...opts, trackLFSProgress: true },
|
|
91
|
-
new PushProgressParser(),
|
|
92
|
-
progress => {
|
|
93
|
-
const description =
|
|
94
|
-
progress.kind === 'progress' ? progress.details.text : progress.text
|
|
95
|
-
const value = progress.percent
|
|
96
|
-
|
|
97
|
-
progressCallback({
|
|
98
|
-
kind,
|
|
99
|
-
title,
|
|
100
|
-
description,
|
|
101
|
-
value,
|
|
102
|
-
remote: remote.name,
|
|
103
|
-
branch: localBranch,
|
|
104
|
-
})
|
|
105
|
-
}
|
|
106
|
-
)
|
|
107
|
-
|
|
108
|
-
// Initial progress
|
|
109
|
-
progressCallback({
|
|
110
|
-
kind: 'push',
|
|
111
|
-
title,
|
|
112
|
-
value: 0,
|
|
113
|
-
remote: remote.name,
|
|
114
|
-
branch: localBranch,
|
|
115
|
-
})
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
await git(args, repository.path, 'push', opts)
|
|
119
|
-
}
|