git 1.19.1 → 5.5.0
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.
- checksums.yaml +4 -4
- data/.yardopts +5 -1
- data/AI_POLICY.md +24 -0
- data/CHANGELOG.md +689 -0
- data/CODE_OF_CONDUCT.md +25 -0
- data/CONTRIBUTING.md +1175 -97
- data/GOVERNANCE.md +106 -0
- data/LICENSE +1 -1
- data/MAINTAINERS.md +17 -4
- data/README.md +476 -320
- data/UPGRADING.md +1138 -0
- data/git.gemspec +124 -36
- data/lib/git/author.rb +39 -7
- data/lib/git/author_info.rb +66 -0
- data/lib/git/branch.rb +615 -65
- data/lib/git/branch_delete_failure.rb +34 -0
- data/lib/git/branch_delete_result.rb +66 -0
- data/lib/git/branch_info.rb +237 -0
- data/lib/git/branches.rb +167 -44
- data/lib/git/command_line/base.rb +247 -0
- data/lib/git/command_line/capturing.rb +308 -0
- data/lib/git/command_line/result.rb +88 -0
- data/lib/git/command_line/streaming.rb +236 -0
- data/lib/git/command_line.rb +52 -0
- data/lib/git/commands/add.rb +139 -0
- data/lib/git/commands/am/abort.rb +43 -0
- data/lib/git/commands/am/apply.rb +263 -0
- data/lib/git/commands/am/continue.rb +43 -0
- data/lib/git/commands/am/quit.rb +43 -0
- data/lib/git/commands/am/retry.rb +49 -0
- data/lib/git/commands/am/show_current_patch.rb +64 -0
- data/lib/git/commands/am/skip.rb +42 -0
- data/lib/git/commands/am.rb +33 -0
- data/lib/git/commands/apply.rb +242 -0
- data/lib/git/commands/archive/list_formats.rb +46 -0
- data/lib/git/commands/archive.rb +145 -0
- data/lib/git/commands/arguments.rb +4521 -0
- data/lib/git/commands/base.rb +502 -0
- data/lib/git/commands/branch/copy.rb +102 -0
- data/lib/git/commands/branch/create.rb +177 -0
- data/lib/git/commands/branch/delete.rb +88 -0
- data/lib/git/commands/branch/list.rb +178 -0
- data/lib/git/commands/branch/move.rb +102 -0
- data/lib/git/commands/branch/set_upstream.rb +86 -0
- data/lib/git/commands/branch/show_current.rb +49 -0
- data/lib/git/commands/branch/unset_upstream.rb +53 -0
- data/lib/git/commands/branch.rb +34 -0
- data/lib/git/commands/cat_file/batch.rb +385 -0
- data/lib/git/commands/cat_file/filtered.rb +105 -0
- data/lib/git/commands/cat_file/raw.rb +271 -0
- data/lib/git/commands/cat_file.rb +49 -0
- data/lib/git/commands/checkout/branch.rb +153 -0
- data/lib/git/commands/checkout/files.rb +116 -0
- data/lib/git/commands/checkout.rb +38 -0
- data/lib/git/commands/checkout_index.rb +106 -0
- data/lib/git/commands/clean.rb +102 -0
- data/lib/git/commands/clone.rb +241 -0
- data/lib/git/commands/commit.rb +273 -0
- data/lib/git/commands/commit_tree.rb +101 -0
- data/lib/git/commands/config_option_syntax/add.rb +86 -0
- data/lib/git/commands/config_option_syntax/get.rb +121 -0
- data/lib/git/commands/config_option_syntax/get_all.rb +118 -0
- data/lib/git/commands/config_option_syntax/get_color.rb +95 -0
- data/lib/git/commands/config_option_syntax/get_color_bool.rb +96 -0
- data/lib/git/commands/config_option_syntax/get_regexp.rb +119 -0
- data/lib/git/commands/config_option_syntax/get_urlmatch.rb +111 -0
- data/lib/git/commands/config_option_syntax/list.rb +111 -0
- data/lib/git/commands/config_option_syntax/remove_section.rb +79 -0
- data/lib/git/commands/config_option_syntax/rename_section.rb +83 -0
- data/lib/git/commands/config_option_syntax/replace_all.rb +109 -0
- data/lib/git/commands/config_option_syntax/set.rb +119 -0
- data/lib/git/commands/config_option_syntax/unset.rb +92 -0
- data/lib/git/commands/config_option_syntax/unset_all.rb +94 -0
- data/lib/git/commands/config_option_syntax.rb +56 -0
- data/lib/git/commands/describe.rb +156 -0
- data/lib/git/commands/diff.rb +657 -0
- data/lib/git/commands/diff_files.rb +519 -0
- data/lib/git/commands/diff_index.rb +499 -0
- data/lib/git/commands/fetch.rb +354 -0
- data/lib/git/commands/fsck.rb +138 -0
- data/lib/git/commands/gc.rb +134 -0
- data/lib/git/commands/grep.rb +339 -0
- data/lib/git/commands/init.rb +101 -0
- data/lib/git/commands/log.rb +634 -0
- data/lib/git/commands/ls_files.rb +195 -0
- data/lib/git/commands/ls_remote.rb +161 -0
- data/lib/git/commands/ls_tree.rb +135 -0
- data/lib/git/commands/maintenance/register.rb +77 -0
- data/lib/git/commands/maintenance/run.rb +109 -0
- data/lib/git/commands/maintenance/start.rb +71 -0
- data/lib/git/commands/maintenance/stop.rb +60 -0
- data/lib/git/commands/maintenance/unregister.rb +84 -0
- data/lib/git/commands/maintenance.rb +31 -0
- data/lib/git/commands/merge/abort.rb +44 -0
- data/lib/git/commands/merge/continue.rb +44 -0
- data/lib/git/commands/merge/quit.rb +46 -0
- data/lib/git/commands/merge/start.rb +250 -0
- data/lib/git/commands/merge.rb +28 -0
- data/lib/git/commands/merge_base.rb +91 -0
- data/lib/git/commands/mv.rb +82 -0
- data/lib/git/commands/name_rev.rb +119 -0
- data/lib/git/commands/pull.rb +382 -0
- data/lib/git/commands/push.rb +251 -0
- data/lib/git/commands/read_tree.rb +154 -0
- data/lib/git/commands/remote/add.rb +96 -0
- data/lib/git/commands/remote/get_url.rb +68 -0
- data/lib/git/commands/remote/list.rb +56 -0
- data/lib/git/commands/remote/prune.rb +63 -0
- data/lib/git/commands/remote/remove.rb +52 -0
- data/lib/git/commands/remote/rename.rb +76 -0
- data/lib/git/commands/remote/set_branches.rb +70 -0
- data/lib/git/commands/remote/set_head.rb +89 -0
- data/lib/git/commands/remote/set_url.rb +78 -0
- data/lib/git/commands/remote/set_url_add.rb +70 -0
- data/lib/git/commands/remote/set_url_delete.rb +71 -0
- data/lib/git/commands/remote/show.rb +77 -0
- data/lib/git/commands/remote/update.rb +79 -0
- data/lib/git/commands/remote.rb +42 -0
- data/lib/git/commands/repack.rb +281 -0
- data/lib/git/commands/reset.rb +154 -0
- data/lib/git/commands/rev_parse.rb +304 -0
- data/lib/git/commands/revert/abort.rb +45 -0
- data/lib/git/commands/revert/continue.rb +62 -0
- data/lib/git/commands/revert/quit.rb +47 -0
- data/lib/git/commands/revert/skip.rb +44 -0
- data/lib/git/commands/revert/start.rb +158 -0
- data/lib/git/commands/revert.rb +29 -0
- data/lib/git/commands/rm.rb +113 -0
- data/lib/git/commands/show.rb +632 -0
- data/lib/git/commands/show_ref/exclude_existing.rb +119 -0
- data/lib/git/commands/show_ref/exists.rb +80 -0
- data/lib/git/commands/show_ref/list.rb +149 -0
- data/lib/git/commands/show_ref/verify.rb +122 -0
- data/lib/git/commands/show_ref.rb +42 -0
- data/lib/git/commands/stash/apply.rb +81 -0
- data/lib/git/commands/stash/branch.rb +67 -0
- data/lib/git/commands/stash/clear.rb +43 -0
- data/lib/git/commands/stash/create.rb +60 -0
- data/lib/git/commands/stash/drop.rb +73 -0
- data/lib/git/commands/stash/list.rb +43 -0
- data/lib/git/commands/stash/pop.rb +87 -0
- data/lib/git/commands/stash/push.rb +112 -0
- data/lib/git/commands/stash/show.rb +158 -0
- data/lib/git/commands/stash/store.rb +72 -0
- data/lib/git/commands/stash.rb +38 -0
- data/lib/git/commands/status.rb +174 -0
- data/lib/git/commands/symbolic_ref/delete.rb +72 -0
- data/lib/git/commands/symbolic_ref/read.rb +99 -0
- data/lib/git/commands/symbolic_ref/update.rb +79 -0
- data/lib/git/commands/symbolic_ref.rb +38 -0
- data/lib/git/commands/tag/create.rb +142 -0
- data/lib/git/commands/tag/delete.rb +57 -0
- data/lib/git/commands/tag/list.rb +146 -0
- data/lib/git/commands/tag/verify.rb +71 -0
- data/lib/git/commands/tag.rb +26 -0
- data/lib/git/commands/update_ref/batch.rb +145 -0
- data/lib/git/commands/update_ref/delete.rb +90 -0
- data/lib/git/commands/update_ref/update.rb +103 -0
- data/lib/git/commands/update_ref.rb +42 -0
- data/lib/git/commands/version.rb +60 -0
- data/lib/git/commands/worktree/add.rb +139 -0
- data/lib/git/commands/worktree/list.rb +64 -0
- data/lib/git/commands/worktree/lock.rb +58 -0
- data/lib/git/commands/worktree/management_base.rb +51 -0
- data/lib/git/commands/worktree/move.rb +66 -0
- data/lib/git/commands/worktree/prune.rb +67 -0
- data/lib/git/commands/worktree/remove.rb +63 -0
- data/lib/git/commands/worktree/repair.rb +76 -0
- data/lib/git/commands/worktree/unlock.rb +47 -0
- data/lib/git/commands/worktree.rb +43 -0
- data/lib/git/commands/write_tree.rb +68 -0
- data/lib/git/commands.rb +88 -0
- data/lib/git/config.rb +72 -5
- data/lib/git/config_entry_info.rb +106 -0
- data/lib/git/configuring.rb +795 -0
- data/lib/git/detached_head_info.rb +57 -0
- data/lib/git/diff.rb +437 -86
- data/lib/git/diff_file_numstat_info.rb +31 -0
- data/lib/git/diff_file_patch_info.rb +136 -0
- data/lib/git/diff_file_raw_info.rb +129 -0
- data/lib/git/diff_info.rb +162 -0
- data/lib/git/diff_path_status.rb +107 -0
- data/lib/git/diff_result.rb +34 -0
- data/lib/git/diff_stats.rb +111 -0
- data/lib/git/dirstat_info.rb +102 -0
- data/lib/git/encoding_utils.rb +32 -1
- data/lib/git/errors.rb +285 -0
- data/lib/git/escaped_path.rb +57 -5
- data/lib/git/execution_context/global.rb +31 -0
- data/lib/git/execution_context/repository.rb +151 -0
- data/lib/git/execution_context.rb +559 -0
- data/lib/git/factories.rb +813 -0
- data/lib/git/file_ref.rb +77 -0
- data/lib/git/fsck_object.rb +56 -0
- data/lib/git/fsck_result.rb +132 -0
- data/lib/git/log.rb +306 -90
- data/lib/git/object.rb +563 -141
- data/lib/git/parsers/branch.rb +240 -0
- data/lib/git/parsers/cat_file.rb +111 -0
- data/lib/git/parsers/config_entry.rb +110 -0
- data/lib/git/parsers/diff.rb +792 -0
- data/lib/git/parsers/fsck.rb +144 -0
- data/lib/git/parsers/grep.rb +42 -0
- data/lib/git/parsers/ls_remote.rb +79 -0
- data/lib/git/parsers/ls_tree.rb +58 -0
- data/lib/git/parsers/remote.rb +162 -0
- data/lib/git/parsers/stash.rb +292 -0
- data/lib/git/parsers/status.rb +251 -0
- data/lib/git/parsers/tag.rb +341 -0
- data/lib/git/parsers/worktree.rb +185 -0
- data/lib/git/path_resolver.rb +206 -0
- data/lib/git/remote.rb +165 -12
- data/lib/git/remote_info.rb +203 -0
- data/lib/git/repository/branching.rb +964 -0
- data/lib/git/repository/committing.rb +246 -0
- data/lib/git/repository/context_helpers.rb +293 -0
- data/lib/git/repository/diffing.rb +785 -0
- data/lib/git/repository/inspecting.rb +252 -0
- data/lib/git/repository/logging.rb +410 -0
- data/lib/git/repository/maintenance.rb +65 -0
- data/lib/git/repository/merging.rb +451 -0
- data/lib/git/repository/object_operations.rb +1551 -0
- data/lib/git/repository/remote_operations.rb +984 -0
- data/lib/git/repository/shared_private.rb +120 -0
- data/lib/git/repository/staging.rb +587 -0
- data/lib/git/repository/stashing.rb +623 -0
- data/lib/git/repository/status_operations.rb +249 -0
- data/lib/git/repository/worktree_operations.rb +339 -0
- data/lib/git/repository.rb +484 -2
- data/lib/git/stash.rb +109 -12
- data/lib/git/stash_info.rb +102 -0
- data/lib/git/stashes.rb +169 -26
- data/lib/git/status.rb +308 -122
- data/lib/git/status_file_info.rb +258 -0
- data/lib/git/status_info.rb +189 -0
- data/lib/git/tag_delete_failure.rb +34 -0
- data/lib/git/tag_delete_result.rb +66 -0
- data/lib/git/tag_info.rb +99 -0
- data/lib/git/url.rb +15 -8
- data/lib/git/version.rb +113 -2
- data/lib/git/version_constraint.rb +85 -0
- data/lib/git/worktree.rb +150 -8
- data/lib/git/worktree_info.rb +128 -0
- data/lib/git/worktrees.rb +118 -13
- data/lib/git.rb +632 -234
- metadata +369 -54
- data/.github/stale.yml +0 -25
- data/.github/workflows/continuous_integration.yml +0 -49
- data/.gitignore +0 -10
- data/Dockerfile.changelog-rs +0 -12
- data/Gemfile +0 -5
- data/ISSUE_TEMPLATE.md +0 -15
- data/PULL_REQUEST_TEMPLATE.md +0 -9
- data/RELEASING.md +0 -70
- data/Rakefile +0 -60
- data/lib/git/base/factory.rb +0 -99
- data/lib/git/base.rb +0 -711
- data/lib/git/command_line_result.rb +0 -86
- data/lib/git/failed_error.rb +0 -53
- data/lib/git/git_execute_error.rb +0 -7
- data/lib/git/index.rb +0 -5
- data/lib/git/lib.rb +0 -1328
- data/lib/git/path.rb +0 -31
- data/lib/git/signaled_error.rb +0 -50
- data/lib/git/working_directory.rb +0 -4
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Remove all stash entries
|
|
9
|
+
#
|
|
10
|
+
# Removes all stash entries. Use with caution as this cannot be undone.
|
|
11
|
+
#
|
|
12
|
+
# @example Clear all stashes
|
|
13
|
+
# Git::Commands::Stash::Clear.new(execution_context).call
|
|
14
|
+
#
|
|
15
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
16
|
+
#
|
|
17
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
18
|
+
#
|
|
19
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
20
|
+
#
|
|
21
|
+
# @api private
|
|
22
|
+
#
|
|
23
|
+
class Clear < Git::Commands::Base
|
|
24
|
+
arguments do
|
|
25
|
+
literal 'stash'
|
|
26
|
+
literal 'clear'
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# @!method call(*)
|
|
30
|
+
#
|
|
31
|
+
# @overload call()
|
|
32
|
+
#
|
|
33
|
+
# Clear all stash entries
|
|
34
|
+
#
|
|
35
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash clear`
|
|
36
|
+
#
|
|
37
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
38
|
+
#
|
|
39
|
+
# @api public
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Create a stash commit without storing it in refs/stash
|
|
9
|
+
#
|
|
10
|
+
# This is a plumbing command used to create a stash commit object without
|
|
11
|
+
# actually storing it in the stash reflog. It's useful for scripts that
|
|
12
|
+
# need to create stash commits programmatically.
|
|
13
|
+
#
|
|
14
|
+
# The command creates a stash commit and outputs its SHA, but does not
|
|
15
|
+
# update refs/stash. Use {Store} to store the commit in the stash reflog.
|
|
16
|
+
#
|
|
17
|
+
# @example Create a stash commit
|
|
18
|
+
# Git::Commands::Stash::Create.new(execution_context).call
|
|
19
|
+
#
|
|
20
|
+
# @example Create a stash commit with a message
|
|
21
|
+
# Git::Commands::Stash::Create.new(execution_context).call('WIP: my changes')
|
|
22
|
+
#
|
|
23
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
24
|
+
#
|
|
25
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
26
|
+
#
|
|
27
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
28
|
+
#
|
|
29
|
+
# @api private
|
|
30
|
+
#
|
|
31
|
+
class Create < Git::Commands::Base
|
|
32
|
+
arguments do
|
|
33
|
+
literal 'stash'
|
|
34
|
+
literal 'create'
|
|
35
|
+
operand :message
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# @!method call(*)
|
|
39
|
+
#
|
|
40
|
+
# Create a stash commit
|
|
41
|
+
#
|
|
42
|
+
# @overload call()
|
|
43
|
+
#
|
|
44
|
+
# Create a stash commit without a message
|
|
45
|
+
#
|
|
46
|
+
# @overload call(message)
|
|
47
|
+
#
|
|
48
|
+
# Create a stash commit with a message
|
|
49
|
+
#
|
|
50
|
+
# @param message [String] optional message for the stash commit
|
|
51
|
+
#
|
|
52
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash create`
|
|
53
|
+
#
|
|
54
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
55
|
+
#
|
|
56
|
+
# @api public
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Remove a stash entry from the stash list
|
|
9
|
+
#
|
|
10
|
+
# Removes a single stash entry from the list of stash entries.
|
|
11
|
+
# If no stash reference is given, it removes the latest one.
|
|
12
|
+
#
|
|
13
|
+
# @example Drop the latest stash
|
|
14
|
+
# Git::Commands::Stash::Drop.new(execution_context).call
|
|
15
|
+
#
|
|
16
|
+
# @example Drop a specific stash
|
|
17
|
+
# Git::Commands::Stash::Drop.new(execution_context).call('stash@\\{2}')
|
|
18
|
+
#
|
|
19
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
20
|
+
#
|
|
21
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
22
|
+
#
|
|
23
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
24
|
+
#
|
|
25
|
+
# @api private
|
|
26
|
+
#
|
|
27
|
+
class Drop < Git::Commands::Base
|
|
28
|
+
arguments do
|
|
29
|
+
literal 'stash'
|
|
30
|
+
literal 'drop'
|
|
31
|
+
flag_option %i[quiet q]
|
|
32
|
+
operand :stash
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# @!method call(*)
|
|
36
|
+
#
|
|
37
|
+
# Drop a stash entry
|
|
38
|
+
#
|
|
39
|
+
# @overload call(**options)
|
|
40
|
+
#
|
|
41
|
+
# Drop the latest stash
|
|
42
|
+
#
|
|
43
|
+
# @param options [Hash] command options
|
|
44
|
+
#
|
|
45
|
+
# @option options [Boolean, nil] :quiet (nil) suppress informational messages
|
|
46
|
+
#
|
|
47
|
+
# Alias: :q
|
|
48
|
+
#
|
|
49
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
50
|
+
#
|
|
51
|
+
# @overload call(stash, **options)
|
|
52
|
+
#
|
|
53
|
+
# Drop a specific stash
|
|
54
|
+
#
|
|
55
|
+
# @param stash [String] stash reference (e.g., 'stash@\\{0}', '0')
|
|
56
|
+
#
|
|
57
|
+
# @param options [Hash] command options
|
|
58
|
+
#
|
|
59
|
+
# @option options [Boolean, nil] :quiet (nil) suppress informational messages
|
|
60
|
+
#
|
|
61
|
+
# Alias: :q
|
|
62
|
+
#
|
|
63
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
64
|
+
#
|
|
65
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash drop`
|
|
66
|
+
#
|
|
67
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
68
|
+
#
|
|
69
|
+
# @api public
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
require 'git/parsers/stash'
|
|
5
|
+
|
|
6
|
+
module Git
|
|
7
|
+
module Commands
|
|
8
|
+
module Stash
|
|
9
|
+
# List all stash entries
|
|
10
|
+
#
|
|
11
|
+
# @example List all stashes
|
|
12
|
+
# Git::Commands::Stash::List.new(execution_context).call
|
|
13
|
+
#
|
|
14
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
15
|
+
#
|
|
16
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
17
|
+
#
|
|
18
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
19
|
+
#
|
|
20
|
+
# @api private
|
|
21
|
+
#
|
|
22
|
+
class List < Git::Commands::Base
|
|
23
|
+
arguments do
|
|
24
|
+
literal 'stash'
|
|
25
|
+
literal 'list'
|
|
26
|
+
literal "--format=#{Git::Parsers::Stash::STASH_FORMAT}"
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# @!method call(*)
|
|
30
|
+
#
|
|
31
|
+
# List all stash entries
|
|
32
|
+
#
|
|
33
|
+
# @overload call()
|
|
34
|
+
#
|
|
35
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash list`
|
|
36
|
+
#
|
|
37
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
38
|
+
#
|
|
39
|
+
# @api public
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Apply stashed changes and remove from stash list
|
|
9
|
+
#
|
|
10
|
+
# Like {Apply}, but removes the stash from the stash list after
|
|
11
|
+
# applying, unless there are conflicts.
|
|
12
|
+
#
|
|
13
|
+
# @example Pop the latest stash
|
|
14
|
+
# Git::Commands::Stash::Pop.new(execution_context).call
|
|
15
|
+
#
|
|
16
|
+
# @example Pop a specific stash
|
|
17
|
+
# Git::Commands::Stash::Pop.new(execution_context).call('stash@\\{2}')
|
|
18
|
+
#
|
|
19
|
+
# @example Pop and restore index state
|
|
20
|
+
# Git::Commands::Stash::Pop.new(execution_context).call(index: true)
|
|
21
|
+
#
|
|
22
|
+
# @example Pop quietly
|
|
23
|
+
# Git::Commands::Stash::Pop.new(execution_context).call(quiet: true)
|
|
24
|
+
#
|
|
25
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
26
|
+
#
|
|
27
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
28
|
+
#
|
|
29
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
30
|
+
#
|
|
31
|
+
# @api private
|
|
32
|
+
#
|
|
33
|
+
class Pop < Git::Commands::Base
|
|
34
|
+
arguments do
|
|
35
|
+
literal 'stash'
|
|
36
|
+
literal 'pop'
|
|
37
|
+
flag_option :index
|
|
38
|
+
flag_option %i[quiet q]
|
|
39
|
+
operand :stash
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# @!method call(*, **options)
|
|
43
|
+
#
|
|
44
|
+
# @param options [Hash] command options
|
|
45
|
+
#
|
|
46
|
+
# @option options [Boolean, nil] :index (nil) command option key; see overload docs
|
|
47
|
+
# for the full option list
|
|
48
|
+
#
|
|
49
|
+
# @overload call(**options)
|
|
50
|
+
#
|
|
51
|
+
# Pop the latest stash
|
|
52
|
+
#
|
|
53
|
+
# @param options [Hash] command options
|
|
54
|
+
#
|
|
55
|
+
# @option options [Boolean, nil] :index (nil) restore the index state as well
|
|
56
|
+
#
|
|
57
|
+
# @option options [Boolean, nil] :quiet (nil) suppress informational messages
|
|
58
|
+
#
|
|
59
|
+
# Alias: :q
|
|
60
|
+
#
|
|
61
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash pop`
|
|
62
|
+
#
|
|
63
|
+
# @overload call(stash, **options)
|
|
64
|
+
#
|
|
65
|
+
# Pop a specific stash
|
|
66
|
+
#
|
|
67
|
+
# @param stash [String] stash reference (e.g., 'stash@\\{0}', '0')
|
|
68
|
+
#
|
|
69
|
+
# @param options [Hash] command options
|
|
70
|
+
#
|
|
71
|
+
# @option options [Boolean, nil] :index (nil) restore the index state as well
|
|
72
|
+
#
|
|
73
|
+
# @option options [Boolean, nil] :quiet (nil) suppress informational messages
|
|
74
|
+
#
|
|
75
|
+
# Alias: :q
|
|
76
|
+
#
|
|
77
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash pop`
|
|
78
|
+
#
|
|
79
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
80
|
+
#
|
|
81
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
82
|
+
#
|
|
83
|
+
# @api public
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Stash changes in the working directory
|
|
9
|
+
#
|
|
10
|
+
# Saves local modifications to a new stash entry and rolls them back
|
|
11
|
+
# to HEAD (in the working tree and index). The command takes
|
|
12
|
+
# various options to customize what gets stashed.
|
|
13
|
+
#
|
|
14
|
+
# @example Save all changes with a message
|
|
15
|
+
# Git::Commands::Stash::Push.new(execution_context).call(message: 'WIP: feature work')
|
|
16
|
+
#
|
|
17
|
+
# @example Stash only specific files
|
|
18
|
+
# Git::Commands::Stash::Push.new(execution_context).call('src/file.rb', message: 'Partial stash')
|
|
19
|
+
#
|
|
20
|
+
# @example Keep staged changes in index
|
|
21
|
+
# Git::Commands::Stash::Push.new(execution_context).call(keep_index: true)
|
|
22
|
+
#
|
|
23
|
+
# @example Include untracked files
|
|
24
|
+
# Git::Commands::Stash::Push.new(execution_context).call(include_untracked: true)
|
|
25
|
+
#
|
|
26
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
27
|
+
#
|
|
28
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
29
|
+
#
|
|
30
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
31
|
+
#
|
|
32
|
+
# @api private
|
|
33
|
+
#
|
|
34
|
+
class Push < Git::Commands::Base
|
|
35
|
+
arguments do
|
|
36
|
+
literal 'stash'
|
|
37
|
+
literal 'push'
|
|
38
|
+
flag_option %i[patch p]
|
|
39
|
+
flag_option %i[staged S]
|
|
40
|
+
flag_option %i[keep_index k], negatable: true
|
|
41
|
+
flag_option %i[quiet q]
|
|
42
|
+
flag_option %i[include_untracked u]
|
|
43
|
+
flag_option %i[all a]
|
|
44
|
+
value_option %i[message m]
|
|
45
|
+
value_option :pathspec_from_file, inline: true
|
|
46
|
+
flag_option :pathspec_file_nul
|
|
47
|
+
end_of_options
|
|
48
|
+
operand :pathspec, repeatable: true
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# @!method call(*, **options)
|
|
52
|
+
#
|
|
53
|
+
# @param options [Hash] command options
|
|
54
|
+
#
|
|
55
|
+
# @option options [Boolean, nil] :patch (nil) command option key; see overload docs
|
|
56
|
+
# for the full option list
|
|
57
|
+
#
|
|
58
|
+
# @overload call(*pathspec, **options)
|
|
59
|
+
#
|
|
60
|
+
# Stash changes in the working directory
|
|
61
|
+
#
|
|
62
|
+
# @param pathspec [Array<String>] optional paths to limit what gets stashed
|
|
63
|
+
#
|
|
64
|
+
# @param options [Hash] command options
|
|
65
|
+
#
|
|
66
|
+
# @option options [Boolean, nil] :patch (nil) interactively select hunks to stash
|
|
67
|
+
#
|
|
68
|
+
# Alias: :p
|
|
69
|
+
#
|
|
70
|
+
# @option options [Boolean, nil] :staged (nil) stash only staged changes
|
|
71
|
+
#
|
|
72
|
+
# Alias: :S
|
|
73
|
+
#
|
|
74
|
+
# @option options [Boolean, nil] :keep_index (nil) keep staged changes in the index (`--keep-index`)
|
|
75
|
+
#
|
|
76
|
+
# Alias: :k
|
|
77
|
+
#
|
|
78
|
+
# @option options [Boolean, nil] :no_keep_index (nil) do not preserve staged changes in the index
|
|
79
|
+
# (`--no-keep-index`)
|
|
80
|
+
#
|
|
81
|
+
# @option options [Boolean, nil] :quiet (nil) suppress informational messages
|
|
82
|
+
#
|
|
83
|
+
# Alias: :q
|
|
84
|
+
#
|
|
85
|
+
# @option options [Boolean, nil] :include_untracked (nil) include untracked files in the stash
|
|
86
|
+
#
|
|
87
|
+
# Alias: :u
|
|
88
|
+
#
|
|
89
|
+
# @option options [Boolean, nil] :all (nil) include untracked and ignored files in the stash
|
|
90
|
+
#
|
|
91
|
+
# Alias: :a
|
|
92
|
+
#
|
|
93
|
+
# @option options [String] :message (nil) descriptive message for the stash
|
|
94
|
+
#
|
|
95
|
+
# Alias: :m
|
|
96
|
+
#
|
|
97
|
+
# @option options [String] :pathspec_from_file (nil) read pathspecs from the given file
|
|
98
|
+
#
|
|
99
|
+
# @option options [Boolean, nil] :pathspec_file_nul (nil) pathspecs in the file are NUL-separated
|
|
100
|
+
#
|
|
101
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash push`
|
|
102
|
+
#
|
|
103
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
104
|
+
#
|
|
105
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
106
|
+
#
|
|
107
|
+
# @api public
|
|
108
|
+
#
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Show the changes recorded in a stash entry as a diff
|
|
9
|
+
#
|
|
10
|
+
# Shows the changes recorded in the stash entry as a diff between the
|
|
11
|
+
# stashed contents and the commit back when the stash entry was first
|
|
12
|
+
# created.
|
|
13
|
+
#
|
|
14
|
+
# @example Show numstat for the latest stash
|
|
15
|
+
# Git::Commands::Stash::Show.new(ctx).call(numstat: true, shortstat: true)
|
|
16
|
+
#
|
|
17
|
+
# @example Show patch for a specific stash
|
|
18
|
+
# Git::Commands::Stash::Show.new(ctx).call('stash@{2}', patch: true, numstat: true, shortstat: true)
|
|
19
|
+
#
|
|
20
|
+
# @example Show with directory statistics
|
|
21
|
+
# Git::Commands::Stash::Show.new(ctx).call(numstat: true, shortstat: true, dirstat: true)
|
|
22
|
+
# Git::Commands::Stash::Show.new(ctx).call(numstat: true, shortstat: true, dirstat: 'lines,cumulative')
|
|
23
|
+
#
|
|
24
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
25
|
+
#
|
|
26
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
27
|
+
#
|
|
28
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
29
|
+
#
|
|
30
|
+
# @api private
|
|
31
|
+
#
|
|
32
|
+
class Show < Git::Commands::Base
|
|
33
|
+
arguments do
|
|
34
|
+
literal 'stash'
|
|
35
|
+
literal 'show'
|
|
36
|
+
|
|
37
|
+
flag_option :patch
|
|
38
|
+
flag_option :numstat
|
|
39
|
+
flag_option :raw
|
|
40
|
+
flag_option :shortstat
|
|
41
|
+
value_option %i[unified U], inline: true
|
|
42
|
+
|
|
43
|
+
flag_option %i[include_untracked u], negatable: true
|
|
44
|
+
flag_option :only_untracked
|
|
45
|
+
flag_or_value_option %i[find_renames M], inline: true
|
|
46
|
+
flag_or_value_option %i[find_copies C], inline: true
|
|
47
|
+
flag_option :find_copies_harder
|
|
48
|
+
value_option :inter_hunk_context, inline: true
|
|
49
|
+
flag_or_value_option :dirstat, inline: true
|
|
50
|
+
operand :stash
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# @!method call(*, **options)
|
|
54
|
+
#
|
|
55
|
+
# @param options [Hash] command options
|
|
56
|
+
#
|
|
57
|
+
# @option options [Boolean, nil] :patch (nil) command option key; see overload docs
|
|
58
|
+
# for the full option list
|
|
59
|
+
#
|
|
60
|
+
# @overload call(**options)
|
|
61
|
+
#
|
|
62
|
+
# Show diff for the latest stash
|
|
63
|
+
#
|
|
64
|
+
# @param options [Hash] command options
|
|
65
|
+
#
|
|
66
|
+
# @option options [Boolean, nil] :patch (nil) include unified diff patches per file
|
|
67
|
+
#
|
|
68
|
+
# @option options [Boolean, nil] :numstat (nil) include per-file insertion/deletion counts
|
|
69
|
+
#
|
|
70
|
+
# @option options [Boolean, nil] :raw (nil) include per-file mode/SHA/status metadata
|
|
71
|
+
#
|
|
72
|
+
# @option options [Boolean, nil] :shortstat (nil) include aggregate totals line
|
|
73
|
+
#
|
|
74
|
+
# @option options [Integer, String] :unified (nil) generate diff with <n> lines of context
|
|
75
|
+
#
|
|
76
|
+
# Alias: :U
|
|
77
|
+
#
|
|
78
|
+
# @option options [Boolean, nil] :include_untracked (nil) include untracked files (`--include-untracked`)
|
|
79
|
+
#
|
|
80
|
+
# Alias: :u
|
|
81
|
+
#
|
|
82
|
+
# @option options [Boolean, nil] :no_include_untracked (nil) exclude untracked files
|
|
83
|
+
# (`--no-include-untracked`)
|
|
84
|
+
#
|
|
85
|
+
# @option options [Boolean, nil] :only_untracked (nil) show only untracked files
|
|
86
|
+
#
|
|
87
|
+
# @option options [Boolean, Integer, nil] :find_renames (nil) detect renames; optionally pass a
|
|
88
|
+
# similarity threshold (e.g., 50 for 50%). Alias: :M
|
|
89
|
+
#
|
|
90
|
+
# @option options [Boolean, Integer, nil] :find_copies (nil) detect copies as well as renames;
|
|
91
|
+
# optionally pass a threshold. Alias: :C
|
|
92
|
+
#
|
|
93
|
+
# @option options [Boolean, nil] :find_copies_harder (nil) inspect all files as copy sources; expensive
|
|
94
|
+
#
|
|
95
|
+
# @option options [Integer, String] :inter_hunk_context (nil) show context between diff hunks, up to
|
|
96
|
+
# <n> lines, fusing hunks that are close to each other
|
|
97
|
+
#
|
|
98
|
+
# @option options [Boolean, String, nil] :dirstat (nil) include directory statistics
|
|
99
|
+
#
|
|
100
|
+
# Pass `true` for default, or a string like `'lines,cumulative'` for options.
|
|
101
|
+
#
|
|
102
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash show`
|
|
103
|
+
#
|
|
104
|
+
# @overload call(stash, **options)
|
|
105
|
+
#
|
|
106
|
+
# Show diff for a specific stash
|
|
107
|
+
#
|
|
108
|
+
# @param stash [String] stash reference (e.g., 'stash@\\{0}', '0')
|
|
109
|
+
#
|
|
110
|
+
# @param options [Hash] command options
|
|
111
|
+
#
|
|
112
|
+
# @option options [Boolean, nil] :patch (nil) include unified diff patches per file
|
|
113
|
+
#
|
|
114
|
+
# @option options [Boolean, nil] :numstat (nil) include per-file insertion/deletion counts
|
|
115
|
+
#
|
|
116
|
+
# @option options [Boolean, nil] :raw (nil) include per-file mode/SHA/status metadata
|
|
117
|
+
#
|
|
118
|
+
# @option options [Boolean, nil] :shortstat (nil) include aggregate totals line
|
|
119
|
+
#
|
|
120
|
+
# @option options [Integer, String] :unified (nil) generate diff with <n> lines of context
|
|
121
|
+
#
|
|
122
|
+
# Alias: :U
|
|
123
|
+
#
|
|
124
|
+
# @option options [Boolean, nil] :include_untracked (nil) include untracked files (`--include-untracked`)
|
|
125
|
+
#
|
|
126
|
+
# Alias: :u
|
|
127
|
+
#
|
|
128
|
+
# @option options [Boolean, nil] :no_include_untracked (nil) exclude untracked files
|
|
129
|
+
# (`--no-include-untracked`)
|
|
130
|
+
#
|
|
131
|
+
# @option options [Boolean, nil] :only_untracked (nil) show only untracked files
|
|
132
|
+
#
|
|
133
|
+
# @option options [Boolean, Integer, nil] :find_renames (nil) detect renames; optionally pass a
|
|
134
|
+
# similarity threshold (e.g., 50 for 50%). Alias: :M
|
|
135
|
+
#
|
|
136
|
+
# @option options [Boolean, Integer, nil] :find_copies (nil) detect copies as well as renames;
|
|
137
|
+
# optionally pass a threshold. Alias: :C
|
|
138
|
+
#
|
|
139
|
+
# @option options [Boolean, nil] :find_copies_harder (nil) inspect all files as copy sources; expensive
|
|
140
|
+
#
|
|
141
|
+
# @option options [Integer, String] :inter_hunk_context (nil) show context between diff hunks, up to
|
|
142
|
+
# <n> lines, fusing hunks that are close to each other
|
|
143
|
+
#
|
|
144
|
+
# @option options [Boolean, String, nil] :dirstat (nil) include directory statistics
|
|
145
|
+
#
|
|
146
|
+
# Pass `true` for default, or a string like `'lines,cumulative'` for options.
|
|
147
|
+
#
|
|
148
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash show`
|
|
149
|
+
#
|
|
150
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
151
|
+
#
|
|
152
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
153
|
+
#
|
|
154
|
+
# @api public
|
|
155
|
+
end
|
|
156
|
+
end
|
|
157
|
+
end
|
|
158
|
+
end
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'git/commands/base'
|
|
4
|
+
|
|
5
|
+
module Git
|
|
6
|
+
module Commands
|
|
7
|
+
module Stash
|
|
8
|
+
# Store a commit in the stash reflog
|
|
9
|
+
#
|
|
10
|
+
# This is a plumbing command used to store a given stash commit (created
|
|
11
|
+
# by `git stash create`) in the stash reflog, updating refs/stash.
|
|
12
|
+
#
|
|
13
|
+
# This command is typically used after {Create} to actually record
|
|
14
|
+
# the stash in the reflog.
|
|
15
|
+
#
|
|
16
|
+
# @example Store a stash commit
|
|
17
|
+
# Git::Commands::Stash::Store.new(execution_context).call('abc123def456')
|
|
18
|
+
#
|
|
19
|
+
# @example Store with a custom message
|
|
20
|
+
# Git::Commands::Stash::Store.new(execution_context).call('abc123def456', message: 'WIP: feature')
|
|
21
|
+
#
|
|
22
|
+
# @note `arguments` block audited against https://git-scm.com/docs/git-stash/2.53.0
|
|
23
|
+
#
|
|
24
|
+
# @see Git::Commands::Stash Git::Commands::Stash for usage examples
|
|
25
|
+
#
|
|
26
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
27
|
+
#
|
|
28
|
+
# @api private
|
|
29
|
+
#
|
|
30
|
+
class Store < Git::Commands::Base
|
|
31
|
+
arguments do
|
|
32
|
+
literal 'stash'
|
|
33
|
+
literal 'store'
|
|
34
|
+
value_option %i[message m]
|
|
35
|
+
flag_option %i[quiet q]
|
|
36
|
+
operand :commit, required: true
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# @!method call(*, **options)
|
|
40
|
+
#
|
|
41
|
+
# @param options [Hash] command options
|
|
42
|
+
#
|
|
43
|
+
# @option options [String] :message (nil) command option key; see overload docs for
|
|
44
|
+
# the full option list
|
|
45
|
+
#
|
|
46
|
+
# @overload call(commit, **options)
|
|
47
|
+
#
|
|
48
|
+
# Store a commit in the stash reflog
|
|
49
|
+
#
|
|
50
|
+
# @param commit [String] the commit SHA to store in the stash (required)
|
|
51
|
+
#
|
|
52
|
+
# @param options [Hash] command options
|
|
53
|
+
#
|
|
54
|
+
# @option options [String] :message (nil) description for the reflog entry
|
|
55
|
+
#
|
|
56
|
+
# Alias: :m
|
|
57
|
+
#
|
|
58
|
+
# @option options [Boolean, nil] :quiet (nil) suppress output
|
|
59
|
+
#
|
|
60
|
+
# Alias: :q
|
|
61
|
+
#
|
|
62
|
+
# @return [Git::CommandLine::Result] the result of calling `git stash store`
|
|
63
|
+
#
|
|
64
|
+
# @raise [ArgumentError] if unsupported options are provided
|
|
65
|
+
#
|
|
66
|
+
# @raise [Git::FailedError] if git exits with a non-zero exit status
|
|
67
|
+
#
|
|
68
|
+
# @api public
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'stash/apply'
|
|
4
|
+
require_relative 'stash/branch'
|
|
5
|
+
require_relative 'stash/clear'
|
|
6
|
+
require_relative 'stash/create'
|
|
7
|
+
require_relative 'stash/drop'
|
|
8
|
+
require_relative 'stash/list'
|
|
9
|
+
require_relative 'stash/pop'
|
|
10
|
+
require_relative 'stash/push'
|
|
11
|
+
require_relative 'stash/show'
|
|
12
|
+
require_relative 'stash/store'
|
|
13
|
+
|
|
14
|
+
module Git
|
|
15
|
+
module Commands
|
|
16
|
+
# Commands for stashing working directory changes via `git stash`
|
|
17
|
+
#
|
|
18
|
+
# This module contains command classes split by stash operation:
|
|
19
|
+
#
|
|
20
|
+
# - {Stash::Push} — save changes to a new stash entry
|
|
21
|
+
# - {Stash::Pop} — apply the top stash and remove it from the stash list
|
|
22
|
+
# - {Stash::Apply} — apply a stash without removing it
|
|
23
|
+
# - {Stash::Drop} — remove a single stash entry
|
|
24
|
+
# - {Stash::Clear} — remove all stash entries
|
|
25
|
+
# - {Stash::List} — list stash entries
|
|
26
|
+
# - {Stash::Show} — show changes recorded in a stash entry
|
|
27
|
+
# - {Stash::Branch} — create a new branch from a stash entry
|
|
28
|
+
# - {Stash::Create} — create a stash object without storing it
|
|
29
|
+
# - {Stash::Store} — store a stash object created with `create`
|
|
30
|
+
#
|
|
31
|
+
# @see https://git-scm.com/docs/git-stash git-stash documentation
|
|
32
|
+
#
|
|
33
|
+
# @api private
|
|
34
|
+
#
|
|
35
|
+
module Stash
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|