git 1.14.0 → 1.16.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/CHANGELOG.md +27 -0
- data/CONTRIBUTING.md +3 -3
- data/README.md +4 -0
- data/lib/git/base/factory.rb +1 -3
- data/lib/git/base.rb +26 -10
- data/lib/git/branch.rb +6 -2
- data/lib/git/lib.rb +81 -25
- data/lib/git/log.rb +32 -36
- data/lib/git/remote.rb +15 -13
- data/lib/git/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 06d2809c51685e3171199f0eb8bce4c02a7970d61d12fabbde7bf2ab3850a86b
|
4
|
+
data.tar.gz: 439eac61b04b8fcdafa739f7f6f27cfc89f00d557aac52aacd6f71762bc8281e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57db3b512e1d30130f1ab8bf9f77a701591c4c05c8c9fe35e9d047329cc7fe08b6e17c93d276bcfbfcb3e5c92a8dcb48cc571d513a7a981d69989eac7daea957
|
7
|
+
data.tar.gz: ee2b51658bda3767a01729888c60b677d79d69b75fadb8659a6d56144e82f51e21da817f7f310b1af0be9baedda37923315adac10ad7a65be1624b6ecb0628fb
|
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,33 @@
|
|
5
5
|
|
6
6
|
# Change Log
|
7
7
|
|
8
|
+
## v1.16.0 (2023-03-03)
|
9
|
+
|
10
|
+
[Full Changelog](https://github.com/ruby-git/ruby-git/compare/v1.15.0..v1.16.0)
|
11
|
+
|
12
|
+
Changes since v1.15.0:
|
13
|
+
|
14
|
+
* 536d Fix parsing when in detached HEAD state in Git::Lib#branches_all (#641)
|
15
|
+
* 5c68 Fix parsing of symbolic refs in `Git::Lib#branches_all` (#640)
|
16
|
+
* 7d88 Remote#branch and #merge should default to current branch instead of "master" (#639)
|
17
|
+
* 3dda0 `#branch` name should default to current branch instead of `master` (#638)
|
18
|
+
* d33d #checkout without args should do same as `git checkout` with no args (#637)
|
19
|
+
* 0c90 #push without args should do same as `git push` with no args (#636)
|
20
|
+
* 2b19 Make it easier to run test files from the command line (#635)
|
21
|
+
|
22
|
+
## v1.15.0 (2023-03-01)
|
23
|
+
|
24
|
+
[Full Changelog](https://github.com/ruby-git/ruby-git/compare/v1.14.0..v1.15.0)
|
25
|
+
|
26
|
+
Changes since v1.14.0:
|
27
|
+
|
28
|
+
* b40d #pull with no options should do the same thing as `git pull` with no options (#633)
|
29
|
+
* 9c5e Fix error when calling `Git::Lib#remove` with `recursive` or `cached` options (#632)
|
30
|
+
* 806e Add Git::Log#all option (#630)
|
31
|
+
* d905 Allow a repo to be opened giving a non-root repo directory (#629)
|
32
|
+
* 1ccd Rewrite worktree tests (#628)
|
33
|
+
* 4409 Fix Git::Branch#update_ref (#626)
|
34
|
+
|
8
35
|
## v1.14.0 (2023-02-25)
|
9
36
|
|
10
37
|
[Full Changelog](https://github.com/ruby-git/ruby-git/compare/v1.13.2..v1.14.0)
|
data/CONTRIBUTING.md
CHANGED
@@ -84,11 +84,11 @@ In order to ensure high quality, all pull requests must meet these requirements:
|
|
84
84
|
While working on specific features you can run individual test files or
|
85
85
|
a group of tests using `bin/test`:
|
86
86
|
|
87
|
-
# run a single file:
|
88
|
-
$ bin/test
|
87
|
+
# run a single file (from tests/units):
|
88
|
+
$ bin/test test_object
|
89
89
|
|
90
90
|
# run multiple files:
|
91
|
-
$ bin/test
|
91
|
+
$ bin/test test_object test_archive
|
92
92
|
|
93
93
|
# run all unit tests:
|
94
94
|
$ bin/test
|
data/README.md
CHANGED
@@ -66,6 +66,10 @@ like:
|
|
66
66
|
|
67
67
|
`@git.log(20).object("some_file").since("2 weeks ago").between('v2.6', 'v2.7').each { |commit| [block] }`
|
68
68
|
|
69
|
+
Pass the `--all` option to `git log` as follows:
|
70
|
+
|
71
|
+
`@git.log.all.each { |commit| [block] }`
|
72
|
+
|
69
73
|
**Git::Worktrees** - Enumerable object that holds `Git::Worktree objects`.
|
70
74
|
|
71
75
|
## Examples
|
data/lib/git/base/factory.rb
CHANGED
@@ -3,9 +3,8 @@ module Git
|
|
3
3
|
class Base
|
4
4
|
|
5
5
|
module Factory
|
6
|
-
|
7
6
|
# @return [Git::Branch] an object for branch_name
|
8
|
-
def branch(branch_name =
|
7
|
+
def branch(branch_name = self.current_branch)
|
9
8
|
Git::Branch.new(self, branch_name)
|
10
9
|
end
|
11
10
|
|
@@ -93,7 +92,6 @@ module Git
|
|
93
92
|
shas = self.lib.merge_base(*args)
|
94
93
|
shas.map { |sha| gcommit(sha) }
|
95
94
|
end
|
96
|
-
|
97
95
|
end
|
98
96
|
|
99
97
|
end
|
data/lib/git/base.rb
CHANGED
@@ -58,9 +58,26 @@ module Git
|
|
58
58
|
self.new(options)
|
59
59
|
end
|
60
60
|
|
61
|
+
def self.root_of_worktree(working_dir)
|
62
|
+
result = working_dir
|
63
|
+
status = nil
|
64
|
+
Dir.chdir(working_dir) do
|
65
|
+
git_cmd = "#{Git::Base.config.binary_path} -c core.quotePath=true -c color.ui=false rev-parse --show-toplevel 2>&1"
|
66
|
+
result = `#{git_cmd}`.chomp
|
67
|
+
status = $?
|
68
|
+
end
|
69
|
+
raise ArgumentError, "'#{working_dir}' is not in a git working tree" unless status.success?
|
70
|
+
result
|
71
|
+
end
|
72
|
+
|
61
73
|
# (see Git.open)
|
62
74
|
def self.open(working_dir, options = {})
|
75
|
+
raise ArgumentError, "'#{working_dir}' is not a directory" unless Dir.exist?(working_dir)
|
76
|
+
|
77
|
+
working_dir = root_of_worktree(working_dir) unless options[:repository]
|
78
|
+
|
63
79
|
normalize_paths(options, default_working_directory: working_dir)
|
80
|
+
|
64
81
|
self.new(options)
|
65
82
|
end
|
66
83
|
|
@@ -255,10 +272,12 @@ module Git
|
|
255
272
|
end
|
256
273
|
|
257
274
|
# removes file(s) from the git repository
|
258
|
-
def
|
259
|
-
self.lib.
|
275
|
+
def rm(path = '.', opts = {})
|
276
|
+
self.lib.rm(path, opts)
|
260
277
|
end
|
261
278
|
|
279
|
+
alias remove rm
|
280
|
+
|
262
281
|
# resets the working directory to the provided commitish
|
263
282
|
def reset(commitish = nil, opts = {})
|
264
283
|
self.lib.reset(commitish, opts)
|
@@ -331,8 +350,8 @@ module Git
|
|
331
350
|
end
|
332
351
|
|
333
352
|
# checks out a branch as the new git working directory
|
334
|
-
def checkout(
|
335
|
-
self.lib.checkout(
|
353
|
+
def checkout(*args, **options)
|
354
|
+
self.lib.checkout(*args, **options)
|
336
355
|
end
|
337
356
|
|
338
357
|
# checks out an old version of a file
|
@@ -355,11 +374,8 @@ module Git
|
|
355
374
|
#
|
356
375
|
# @git.config('remote.remote-name.push', 'refs/heads/master:refs/heads/master')
|
357
376
|
#
|
358
|
-
def push(
|
359
|
-
|
360
|
-
opts = {:tags => opts} if [true, false].include?(opts)
|
361
|
-
|
362
|
-
self.lib.push(remote, branch, opts)
|
377
|
+
def push(*args, **options)
|
378
|
+
self.lib.push(*args, **options)
|
363
379
|
end
|
364
380
|
|
365
381
|
# merges one or more branches into the current working branch
|
@@ -380,7 +396,7 @@ module Git
|
|
380
396
|
# @git.pull('upstream') # pulls from upstream/master
|
381
397
|
# @git.pull('upstream', 'develope') # pulls from upstream/develop
|
382
398
|
#
|
383
|
-
def pull(remote=
|
399
|
+
def pull(remote = nil, branch = nil)
|
384
400
|
self.lib.pull(remote, branch)
|
385
401
|
end
|
386
402
|
|
data/lib/git/branch.rb
CHANGED
@@ -78,7 +78,11 @@ module Git
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def update_ref(commit)
|
81
|
-
@
|
81
|
+
if @remote
|
82
|
+
@base.lib.update_ref("refs/remotes/#{@remote.name}/#{@name}", commit)
|
83
|
+
else
|
84
|
+
@base.lib.update_ref("refs/heads/#{@name}", commit)
|
85
|
+
end
|
82
86
|
end
|
83
87
|
|
84
88
|
def to_a
|
@@ -114,7 +118,7 @@ module Git
|
|
114
118
|
# param [String] name branch full name.
|
115
119
|
# return [<Git::Remote,NilClass,String>] an Array containing the remote and branch names.
|
116
120
|
def parse_name(name)
|
117
|
-
if name.match(/^(?:remotes)
|
121
|
+
if name.match(/^(?:remotes\/)?([^\/]+)\/(.+)/)
|
118
122
|
return [Git::Remote.new(@base, $1), $2]
|
119
123
|
end
|
120
124
|
|
data/lib/git/lib.rb
CHANGED
@@ -347,13 +347,42 @@ module Git
|
|
347
347
|
command('symbolic-ref', 'HEAD', "refs/heads/#{branch_name}")
|
348
348
|
end
|
349
349
|
|
350
|
+
BRANCH_LINE_REGEXP = /
|
351
|
+
^
|
352
|
+
# Prefix indicates if this branch is checked out. The prefix is one of:
|
353
|
+
(?:
|
354
|
+
(?<current>\*[[:blank:]]) | # Current branch (checked out in the current worktree)
|
355
|
+
(?<worktree>\+[[:blank:]]) | # Branch checked out in a different worktree
|
356
|
+
[[:blank:]]{2} # Branch not checked out
|
357
|
+
)
|
358
|
+
|
359
|
+
# The branch's full refname
|
360
|
+
(?:
|
361
|
+
(?<not_a_branch>\(not[[:blank:]]a[[:blank:]]branch\)) |
|
362
|
+
(?:\(HEAD[[:blank:]]detached[[:blank:]]at[[:blank:]](?<detached_ref>[^\)]+)\)) |
|
363
|
+
(?<refname>[^[[:blank:]]]+)
|
364
|
+
)
|
365
|
+
|
366
|
+
# Optional symref
|
367
|
+
# If this ref is a symbolic reference, this is the ref referenced
|
368
|
+
(?:
|
369
|
+
[[:blank:]]->[[:blank:]](?<symref>.*)
|
370
|
+
)?
|
371
|
+
$
|
372
|
+
/x
|
373
|
+
|
350
374
|
def branches_all
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
375
|
+
command_lines('branch', '-a').map do |line|
|
376
|
+
match_data = line.match(BRANCH_LINE_REGEXP)
|
377
|
+
raise GitExecuteError, 'Unexpected branch line format' unless match_data
|
378
|
+
next nil if match_data[:not_a_branch] || match_data[:detached_ref]
|
379
|
+
[
|
380
|
+
match_data[:refname],
|
381
|
+
!match_data[:current].nil?,
|
382
|
+
!match_data[:worktree].nil?,
|
383
|
+
match_data[:symref]
|
384
|
+
]
|
385
|
+
end.compact
|
357
386
|
end
|
358
387
|
|
359
388
|
def worktrees_all
|
@@ -628,16 +657,12 @@ module Git
|
|
628
657
|
command('add', *arr_opts)
|
629
658
|
end
|
630
659
|
|
631
|
-
def
|
660
|
+
def rm(path = '.', opts = {})
|
632
661
|
arr_opts = ['-f'] # overrides the up-to-date check by default
|
633
|
-
arr_opts <<
|
634
|
-
arr_opts <<
|
662
|
+
arr_opts << '-r' if opts[:recursive]
|
663
|
+
arr_opts << '--cached' if opts[:cached]
|
635
664
|
arr_opts << '--'
|
636
|
-
|
637
|
-
arr_opts += path
|
638
|
-
else
|
639
|
-
arr_opts << path
|
640
|
-
end
|
665
|
+
arr_opts += Array(path)
|
641
666
|
|
642
667
|
command('rm', *arr_opts)
|
643
668
|
end
|
@@ -776,11 +801,16 @@ module Git
|
|
776
801
|
#
|
777
802
|
# @param [String] branch
|
778
803
|
# @param [Hash] opts
|
779
|
-
def checkout(branch, opts = {})
|
804
|
+
def checkout(branch = nil, opts = {})
|
805
|
+
if branch.is_a?(Hash) && opts == {}
|
806
|
+
opts = branch
|
807
|
+
branch = nil
|
808
|
+
end
|
809
|
+
|
780
810
|
arr_opts = []
|
781
811
|
arr_opts << '-b' if opts[:new_branch] || opts[:b]
|
782
812
|
arr_opts << '--force' if opts[:force] || opts[:f]
|
783
|
-
arr_opts << branch
|
813
|
+
arr_opts << branch if branch
|
784
814
|
arr_opts << opts[:start_point] if opts[:start_point] && arr_opts.include?('-b')
|
785
815
|
|
786
816
|
command('checkout', *arr_opts)
|
@@ -912,26 +942,47 @@ module Git
|
|
912
942
|
command('fetch', *arr_opts)
|
913
943
|
end
|
914
944
|
|
915
|
-
def push(remote, branch =
|
945
|
+
def push(remote = nil, branch = nil, opts = nil)
|
946
|
+
if opts.nil? && branch.instance_of?(Hash)
|
947
|
+
opts = branch
|
948
|
+
branch = nil
|
949
|
+
end
|
950
|
+
|
951
|
+
if opts.nil? && remote.instance_of?(Hash)
|
952
|
+
opts = remote
|
953
|
+
remote = nil
|
954
|
+
end
|
955
|
+
|
956
|
+
opts ||= {}
|
957
|
+
|
916
958
|
# Small hack to keep backwards compatibility with the 'push(remote, branch, tags)' method signature.
|
917
959
|
opts = {:tags => opts} if [true, false].include?(opts)
|
918
960
|
|
961
|
+
raise ArgumentError, "You must specify a remote if a branch is specified" if remote.nil? && !branch.nil?
|
962
|
+
|
919
963
|
arr_opts = []
|
920
964
|
arr_opts << '--mirror' if opts[:mirror]
|
921
965
|
arr_opts << '--delete' if opts[:delete]
|
922
966
|
arr_opts << '--force' if opts[:force] || opts[:f]
|
923
|
-
arr_opts << remote
|
967
|
+
arr_opts << remote if remote
|
968
|
+
arr_opts_with_branch = arr_opts.dup
|
969
|
+
arr_opts_with_branch << branch if branch
|
924
970
|
|
925
971
|
if opts[:mirror]
|
926
|
-
command('push', *
|
972
|
+
command('push', *arr_opts_with_branch)
|
927
973
|
else
|
928
|
-
command('push', *
|
974
|
+
command('push', *arr_opts_with_branch)
|
929
975
|
command('push', '--tags', *arr_opts) if opts[:tags]
|
930
976
|
end
|
931
977
|
end
|
932
978
|
|
933
|
-
def pull(remote=
|
934
|
-
|
979
|
+
def pull(remote = nil, branch = nil)
|
980
|
+
raise ArgumentError, "You must specify a remote if a branch is specified" if remote.nil? && !branch.nil?
|
981
|
+
|
982
|
+
arr_opts = []
|
983
|
+
arr_opts << remote if remote
|
984
|
+
arr_opts << branch if branch
|
985
|
+
command('pull', *arr_opts)
|
935
986
|
end
|
936
987
|
|
937
988
|
def tag_sha(tag_name)
|
@@ -974,8 +1025,8 @@ module Git
|
|
974
1025
|
command('commit-tree', *arr_opts, redirect: "< #{escape t.path}")
|
975
1026
|
end
|
976
1027
|
|
977
|
-
def update_ref(
|
978
|
-
command('update-ref',
|
1028
|
+
def update_ref(ref, commit)
|
1029
|
+
command('update-ref', ref, commit)
|
979
1030
|
end
|
980
1031
|
|
981
1032
|
def checkout_index(opts = {})
|
@@ -1182,7 +1233,12 @@ module Git
|
|
1182
1233
|
def log_common_options(opts)
|
1183
1234
|
arr_opts = []
|
1184
1235
|
|
1185
|
-
|
1236
|
+
if opts[:count] && !opts[:count].is_a?(Integer)
|
1237
|
+
raise ArgumentError, "The log count option must be an Integer but was #{opts[:count].inspect}"
|
1238
|
+
end
|
1239
|
+
|
1240
|
+
arr_opts << "--max-count=#{opts[:count]}" if opts[:count]
|
1241
|
+
arr_opts << "--all" if opts[:all]
|
1186
1242
|
arr_opts << "--no-color"
|
1187
1243
|
arr_opts << "--cherry" if opts[:cherry]
|
1188
1244
|
arr_opts << "--since=#{opts[:since]}" if opts[:since].is_a? String
|
data/lib/git/log.rb
CHANGED
@@ -1,24 +1,19 @@
|
|
1
1
|
module Git
|
2
|
-
|
2
|
+
|
3
3
|
# object that holds the last X commits on given branch
|
4
4
|
class Log
|
5
5
|
include Enumerable
|
6
|
-
|
6
|
+
|
7
7
|
def initialize(base, count = 30)
|
8
8
|
dirty_log
|
9
9
|
@base = base
|
10
10
|
@count = count
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
@
|
16
|
-
|
17
|
-
@since = nil
|
18
|
-
@skip = nil
|
19
|
-
@until = nil
|
20
|
-
@between = nil
|
21
|
-
@cherry = nil
|
11
|
+
end
|
12
|
+
|
13
|
+
def all
|
14
|
+
dirty_log
|
15
|
+
@all = true
|
16
|
+
self
|
22
17
|
end
|
23
18
|
|
24
19
|
def object(objectish)
|
@@ -32,37 +27,37 @@ module Git
|
|
32
27
|
@author = regex
|
33
28
|
return self
|
34
29
|
end
|
35
|
-
|
30
|
+
|
36
31
|
def grep(regex)
|
37
32
|
dirty_log
|
38
33
|
@grep = regex
|
39
34
|
return self
|
40
35
|
end
|
41
|
-
|
36
|
+
|
42
37
|
def path(path)
|
43
38
|
dirty_log
|
44
39
|
@path = path
|
45
40
|
return self
|
46
41
|
end
|
47
|
-
|
42
|
+
|
48
43
|
def skip(num)
|
49
44
|
dirty_log
|
50
45
|
@skip = num
|
51
46
|
return self
|
52
47
|
end
|
53
|
-
|
48
|
+
|
54
49
|
def since(date)
|
55
50
|
dirty_log
|
56
51
|
@since = date
|
57
52
|
return self
|
58
53
|
end
|
59
|
-
|
54
|
+
|
60
55
|
def until(date)
|
61
56
|
dirty_log
|
62
57
|
@until = date
|
63
58
|
return self
|
64
59
|
end
|
65
|
-
|
60
|
+
|
66
61
|
def between(sha1, sha2 = nil)
|
67
62
|
dirty_log
|
68
63
|
@between = [sha1, sha2]
|
@@ -74,24 +69,24 @@ module Git
|
|
74
69
|
@cherry = true
|
75
70
|
return self
|
76
71
|
end
|
77
|
-
|
72
|
+
|
78
73
|
def to_s
|
79
74
|
self.map { |c| c.to_s }.join("\n")
|
80
75
|
end
|
81
|
-
|
76
|
+
|
82
77
|
|
83
78
|
# forces git log to run
|
84
|
-
|
79
|
+
|
85
80
|
def size
|
86
81
|
check_log
|
87
82
|
@commits.size rescue nil
|
88
83
|
end
|
89
|
-
|
84
|
+
|
90
85
|
def each(&block)
|
91
86
|
check_log
|
92
87
|
@commits.each(&block)
|
93
88
|
end
|
94
|
-
|
89
|
+
|
95
90
|
def first
|
96
91
|
check_log
|
97
92
|
@commits.first rescue nil
|
@@ -107,29 +102,30 @@ module Git
|
|
107
102
|
@commits[index] rescue nil
|
108
103
|
end
|
109
104
|
|
110
|
-
|
111
|
-
private
|
112
|
-
|
105
|
+
|
106
|
+
private
|
107
|
+
|
113
108
|
def dirty_log
|
114
109
|
@dirty_flag = true
|
115
110
|
end
|
116
|
-
|
111
|
+
|
117
112
|
def check_log
|
118
113
|
if @dirty_flag
|
119
114
|
run_log
|
120
115
|
@dirty_flag = false
|
121
116
|
end
|
122
117
|
end
|
123
|
-
|
118
|
+
|
124
119
|
# actually run the 'git log' command
|
125
|
-
def run_log
|
126
|
-
log = @base.lib.full_log_commits(
|
127
|
-
|
128
|
-
|
129
|
-
|
120
|
+
def run_log
|
121
|
+
log = @base.lib.full_log_commits(
|
122
|
+
count: @count, all: @all, object: @object, path_limiter: @path, since: @since,
|
123
|
+
author: @author, grep: @grep, skip: @skip, until: @until, between: @between,
|
124
|
+
cherry: @cherry
|
125
|
+
)
|
130
126
|
@commits = log.map { |c| Git::Object::Commit.new(@base, c['sha'], c) }
|
131
127
|
end
|
132
|
-
|
128
|
+
|
133
129
|
end
|
134
|
-
|
130
|
+
|
135
131
|
end
|
data/lib/git/remote.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
module Git
|
2
2
|
class Remote < Path
|
3
|
-
|
3
|
+
|
4
4
|
attr_accessor :name, :url, :fetch_opts
|
5
|
-
|
5
|
+
|
6
6
|
def initialize(base, name)
|
7
7
|
@base = base
|
8
8
|
config = @base.lib.config_remote(name)
|
@@ -10,27 +10,29 @@ module Git
|
|
10
10
|
@url = config['url']
|
11
11
|
@fetch_opts = config['fetch']
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
def fetch(opts={})
|
15
15
|
@base.fetch(@name, opts)
|
16
16
|
end
|
17
|
-
|
17
|
+
|
18
18
|
# merge this remote locally
|
19
|
-
def merge(branch =
|
20
|
-
|
19
|
+
def merge(branch = @base.current_branch)
|
20
|
+
remote_tracking_branch = "#{@name}/#{branch}"
|
21
|
+
@base.merge(remote_tracking_branch)
|
21
22
|
end
|
22
|
-
|
23
|
-
def branch(branch =
|
24
|
-
|
23
|
+
|
24
|
+
def branch(branch = @base.current_branch)
|
25
|
+
remote_tracking_branch = "#{@name}/#{branch}"
|
26
|
+
Git::Branch.new(@base, remote_tracking_branch)
|
25
27
|
end
|
26
|
-
|
28
|
+
|
27
29
|
def remove
|
28
|
-
@base.lib.remote_remove(@name)
|
30
|
+
@base.lib.remote_remove(@name)
|
29
31
|
end
|
30
|
-
|
32
|
+
|
31
33
|
def to_s
|
32
34
|
@name
|
33
35
|
end
|
34
|
-
|
36
|
+
|
35
37
|
end
|
36
38
|
end
|
data/lib/git/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scott Chacon and others
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-03-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|