git 1.19.1 → 3.1.1

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.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.commitlintrc.yml +38 -0
  3. data/.github/pull_request_template.md +8 -0
  4. data/.github/workflows/continuous_integration.yml +19 -21
  5. data/.github/workflows/enforce_conventional_commits.yml +28 -0
  6. data/.github/workflows/experimental_continuous_integration.yml +50 -0
  7. data/.github/workflows/release.yml +52 -0
  8. data/.gitignore +3 -0
  9. data/.husky/commit-msg +1 -0
  10. data/.release-please-manifest.json +3 -0
  11. data/.yardopts +0 -1
  12. data/CHANGELOG.md +211 -0
  13. data/CONTRIBUTING.md +290 -102
  14. data/README.md +180 -62
  15. data/Rakefile +7 -0
  16. data/git.gemspec +11 -11
  17. data/lib/git/author.rb +3 -2
  18. data/lib/git/base.rb +222 -59
  19. data/lib/git/branch.rb +2 -0
  20. data/lib/git/branches.rb +15 -14
  21. data/lib/git/command_line.rb +287 -0
  22. data/lib/git/config.rb +7 -1
  23. data/lib/git/diff.rb +2 -0
  24. data/lib/git/errors.rb +206 -0
  25. data/lib/git/escaped_path.rb +1 -1
  26. data/lib/git/index.rb +2 -1
  27. data/lib/git/lib.rb +604 -234
  28. data/lib/git/log.rb +74 -6
  29. data/lib/git/object.rb +80 -76
  30. data/lib/git/path.rb +9 -8
  31. data/lib/git/remote.rb +2 -0
  32. data/lib/git/repository.rb +2 -0
  33. data/lib/git/stash.rb +7 -6
  34. data/lib/git/stashes.rb +11 -10
  35. data/lib/git/status.rb +135 -25
  36. data/lib/git/version.rb +3 -1
  37. data/lib/git/working_directory.rb +2 -0
  38. data/lib/git/worktree.rb +2 -0
  39. data/lib/git/worktrees.rb +2 -0
  40. data/lib/git.rb +21 -7
  41. data/package.json +10 -0
  42. data/release-please-config.json +36 -0
  43. metadata +52 -38
  44. data/.github/stale.yml +0 -25
  45. data/Dockerfile.changelog-rs +0 -12
  46. data/PULL_REQUEST_TEMPLATE.md +0 -9
  47. data/RELEASING.md +0 -70
  48. data/lib/git/base/factory.rb +0 -99
  49. data/lib/git/failed_error.rb +0 -53
  50. data/lib/git/git_execute_error.rb +0 -7
  51. data/lib/git/signaled_error.rb +0 -50
  52. /data/{ISSUE_TEMPLATE.md → .github/issue_template.md} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6f12803468275850ae680a4df2719890e8f84de95258f30dc898f817c7155d44
4
- data.tar.gz: d24540a708538775d2ff1af495f04e7f42a297aaf790d0fe7b65ad71fe402550
3
+ metadata.gz: 8ea6b964531a2d91cdc46c4e4c7a6d9f79251f246f2c8856c271b989c6d22800
4
+ data.tar.gz: 3fd581082807719899cdbe85eea5ca8eca35803402f6822c66bd5b95b27de10b
5
5
  SHA512:
6
- metadata.gz: 15a09f75d84fb1ff7547403eb36c7342bee11fc1a23cf86e5eae224a2494da0e0bc60bf288c04924c87bdf6736f156f4d98f0468cf815d03b3291509ab234e8d
7
- data.tar.gz: 7fe2633018ec2e38805b987271cc033d023b1a32b429cf2f75e88d1ac1c86c913689fc46806ea49c38fce66005215b05fc700ca3adc925afd0b3dcd3fefdc091
6
+ metadata.gz: ae34ed0370f1ac66b68c03e13ef16d9415e531f3ebe0b7af906dc6d9150c4fc0eec63da7dde987530f7a24bf17966cb3053b40723e0056c78652763340b8e71c
7
+ data.tar.gz: ec675f610d8d193dac8c0debca9de1480d154b3d09c34e172dbb0e68d7a47625fdcb7d8bef7a5625e3fef8dfd10e029e1ff682ee033b698beebae43414b3454f
data/.commitlintrc.yml ADDED
@@ -0,0 +1,38 @@
1
+ ---
2
+ extends: '@commitlint/config-conventional'
3
+
4
+ rules:
5
+ # See: https://commitlint.js.org/reference/rules.html
6
+ #
7
+ # Rules are made up by a name and a configuration array. The configuration
8
+ # array contains:
9
+ #
10
+ # * Severity [0..2]: 0 disable rule, 1 warning if violated, or 2 error if
11
+ # violated
12
+ # * Applicability [always|never]: never inverts the rule
13
+ # * Value: value to use for this rule (if applicable)
14
+ #
15
+ # Run `npx commitlint --print-config` to see the current setting for all
16
+ # rules.
17
+ #
18
+ header-max-length: [2, always, 100] # Header can not exceed 100 chars
19
+
20
+ type-case: [2, always, lower-case] # Type must be lower case
21
+ type-empty: [2, never] # Type must not be empty
22
+
23
+ # Supported conventional commit types
24
+ type-enum: [2, always, [build, ci, chore, docs, feat, fix, perf, refactor, revert, style, test]]
25
+
26
+ scope-case: [2, always, lower-case] # Scope must be lower case
27
+
28
+ # Error if subject is one of these cases (encourages lower-case)
29
+ subject-case: [2, never, [sentence-case, start-case, pascal-case, upper-case]]
30
+ subject-empty: [2, never] # Subject must not be empty
31
+ subject-full-stop: [2, never, "."] # Subject must not end with a period
32
+
33
+ body-leading-blank: [2, always] # Body must have a blank line before it
34
+ body-max-line-length: [2, always, 100] # Body lines can not exceed 100 chars
35
+
36
+ footer-leading-blank: [2, always] # Footer must have a blank line before it
37
+ footer-max-line-length: [2, always, 100] # Footer lines can not exceed 100 chars
38
+
@@ -0,0 +1,8 @@
1
+ Review our [guidelines for contributing](https://github.com/ruby-git/ruby-git/blob/main/CONTRIBUTING.md) to this repository. A good start is to:
2
+
3
+ * Write tests for your changes
4
+ * Run `rake` before pushing
5
+ * Include / update docs in the README.md and in YARD documentation
6
+
7
+ # Description
8
+
@@ -1,40 +1,38 @@
1
1
  name: CI
2
2
 
3
3
  on:
4
- push:
5
- branches: [master]
6
4
  pull_request:
7
- branches: [master]
5
+ branches: [main]
8
6
  workflow_dispatch:
9
7
 
10
8
  jobs:
11
- continuous_integration_build:
12
- continue-on-error: true
9
+ build:
10
+ name: Ruby ${{ matrix.ruby }} on ${{ matrix.operating-system }}
11
+
12
+ # Skip this job if triggered by a release PR
13
+ if: >-
14
+ github.event_name == 'workflow_dispatch' ||
15
+ (github.event_name == 'pull_request' && !startsWith(github.event.pull_request.head.ref, 'release-please--'))
16
+
17
+ runs-on: ${{ matrix.operating-system }}
18
+ continue-on-error: ${{ matrix.experimental == 'Yes' }}
19
+ env: { JAVA_OPTS: -Djdk.io.File.enableADS=true }
20
+
13
21
  strategy:
14
22
  fail-fast: false
15
23
  matrix:
16
- ruby: [2.7, 3.0, 3.1, 3.2]
24
+ # Only the latest versions of JRuby and TruffleRuby are tested
25
+ ruby: ["3.1", "3.2", "3.3", "3.4", "truffleruby-24.1.2", "jruby-9.4.12.0"]
17
26
  operating-system: [ubuntu-latest]
27
+ experimental: [No]
18
28
  include:
19
- - ruby: head
20
- operating-system: ubuntu-latest
21
- - ruby: truffleruby-head
22
- operating-system: ubuntu-latest
23
- - ruby: 2.7
24
- operating-system: windows-latest
25
- - ruby: jruby-head
29
+ - # Only test with minimal Ruby version on Windows
30
+ ruby: 3.1
26
31
  operating-system: windows-latest
27
32
 
28
- name: Ruby ${{ matrix.ruby }} on ${{ matrix.operating-system }}
29
-
30
- runs-on: ${{ matrix.operating-system }}
31
-
32
- env:
33
- JAVA_OPTS: -Djdk.io.File.enableADS=true
34
-
35
33
  steps:
36
34
  - name: Checkout Code
37
- uses: actions/checkout@v3
35
+ uses: actions/checkout@v4
38
36
 
39
37
  - name: Setup Ruby
40
38
  uses: ruby/setup-ruby@v1
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: Conventional Commits
3
+
4
+ permissions:
5
+ contents: read
6
+
7
+ on:
8
+ pull_request:
9
+ branches:
10
+ - main
11
+
12
+ jobs:
13
+ commit-lint:
14
+ name: Verify Conventional Commits
15
+
16
+ # Skip this job if this is a release PR
17
+ if: (github.event_name == 'pull_request' && !startsWith(github.event.pull_request.head.ref, 'release-please--'))
18
+
19
+ runs-on: ubuntu-latest
20
+
21
+ steps:
22
+ - name: Checkout
23
+ uses: actions/checkout@v4
24
+ with: { fetch-depth: 0 }
25
+
26
+ - name: Check Commit Messages
27
+ uses: wagoid/commitlint-github-action@v6
28
+ with: { configFile: .commitlintrc.yml }
@@ -0,0 +1,50 @@
1
+ name: CI Experimental
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+
7
+ workflow_dispatch:
8
+
9
+ jobs:
10
+ build:
11
+ name: Ruby ${{ matrix.ruby }} on ${{ matrix.operating-system }}
12
+
13
+ # Skip this job if triggered by pushing a release commit
14
+ if: >-
15
+ github.event_name == 'workflow_dispatch' ||
16
+ (github.event_name == 'push' && !startsWith(github.event.head_commit.message, 'chore: release '))
17
+
18
+ runs-on: ${{ matrix.operating-system }}
19
+ continue-on-error: true
20
+ env: { JAVA_OPTS: -Djdk.io.File.enableADS=true }
21
+
22
+ strategy:
23
+ fail-fast: false
24
+ matrix:
25
+ include:
26
+ - # Building against head version of Ruby is considered experimental
27
+ ruby: head
28
+ operating-system: ubuntu-latest
29
+ experimental: Yes
30
+
31
+ - # Since JRuby on Windows is known to not work, consider this experimental
32
+ ruby: jruby-head
33
+ operating-system: windows-latest
34
+ experimental: Yes
35
+
36
+ steps:
37
+ - name: Checkout Code
38
+ uses: actions/checkout@v4
39
+
40
+ - name: Setup Ruby
41
+ uses: ruby/setup-ruby@v1
42
+ with:
43
+ ruby-version: ${{ matrix.ruby }}
44
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
45
+
46
+ - name: Run Build
47
+ run: bundle exec rake default
48
+
49
+ - name: Test Gem
50
+ run: bundle exec rake test:gem
@@ -0,0 +1,52 @@
1
+ ---
2
+ name: Release Gem
3
+
4
+ description: |
5
+ This workflow creates a new release on GitHub and publishes the gem to
6
+ RubyGems.org.
7
+
8
+ The workflow uses the `googleapis/release-please-action` to handle the
9
+ release creation process and the `rubygems/release-gem` action to publish
10
+ the gem to rubygems.org
11
+
12
+ on:
13
+ push:
14
+ branches: ["main"]
15
+
16
+ workflow_dispatch:
17
+
18
+ jobs:
19
+ release:
20
+ runs-on: ubuntu-latest
21
+
22
+ environment:
23
+ name: RubyGems
24
+ url: https://rubygems.org/gems/git
25
+
26
+ permissions:
27
+ contents: write
28
+ pull-requests: write
29
+ id-token: write
30
+
31
+ steps:
32
+ - name: Checkout project
33
+ uses: actions/checkout@v4
34
+
35
+ - name: Create release
36
+ uses: googleapis/release-please-action@v4
37
+ id: release
38
+ with:
39
+ token: ${{ secrets.AUTO_RELEASE_TOKEN }}
40
+ config-file: release-please-config.json
41
+ manifest-file: .release-please-manifest.json
42
+
43
+ - name: Setup ruby
44
+ uses: ruby/setup-ruby@v1
45
+ if: ${{ steps.release.outputs.release_created }}
46
+ with:
47
+ bundler-cache: true
48
+ ruby-version: ruby
49
+
50
+ - name: Push to RubyGems.org
51
+ uses: rubygems/release-gem@v1
52
+ if: ${{ steps.release.outputs.release_created }}
data/.gitignore CHANGED
@@ -8,3 +8,6 @@ doc
8
8
  pkg
9
9
  rdoc
10
10
  Gemfile.lock
11
+ node_modules
12
+ package-lock.json
13
+ ai-prompt.erb
data/.husky/commit-msg ADDED
@@ -0,0 +1 @@
1
+ npx --no-install commitlint --edit "$1"
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "3.1.1"
3
+ }
data/.yardopts CHANGED
@@ -7,5 +7,4 @@
7
7
  README.md
8
8
  CHANGELOG.md
9
9
  CONTRIBUTING.md
10
- RELEASING.md
11
10
  MAINTAINERS.md
data/CHANGELOG.md CHANGED
@@ -5,6 +5,217 @@
5
5
 
6
6
  # Change Log
7
7
 
8
+ ## [3.1.1](https://github.com/ruby-git/ruby-git/compare/v3.1.0...v3.1.1) (2025-07-02)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * Raise a Git::FailedError if depth < 0 is passed to Git.clone ([803253e](https://github.com/ruby-git/ruby-git/commit/803253ea2dd2b69b099c0d1919b03ac65c800264)), closes [#805](https://github.com/ruby-git/ruby-git/issues/805)
14
+
15
+
16
+ ### Other Changes
17
+
18
+ * Announce default branch change in README ([e04f08e](https://github.com/ruby-git/ruby-git/commit/e04f08e202ae54286033b4d0a75c47f124bd63e2))
19
+ * Update the project's default branch from 'master' to 'main' ([a5aa75f](https://github.com/ruby-git/ruby-git/commit/a5aa75fd04a71cd8236b8c8481a067c0a47b24b9))
20
+
21
+ ## [3.1.0](https://github.com/ruby-git/ruby-git/compare/v3.0.2...v3.1.0) (2025-05-18)
22
+
23
+
24
+ ### Features
25
+
26
+ * Make Git::Log support the git log --merges option ([df3b07d](https://github.com/ruby-git/ruby-git/commit/df3b07d0f14d79c6c77edc04550c1ad0207c920a))
27
+
28
+
29
+ ### Other Changes
30
+
31
+ * Announce and document guidelines for using Conventional Commits ([a832259](https://github.com/ruby-git/ruby-git/commit/a832259314aa9c8bdd7719e50d425917df1df831))
32
+ * Skip continuous integration workflow for release PRs ([f647a18](https://github.com/ruby-git/ruby-git/commit/f647a18c8a3ae78f49c8cd485db4660aa10a92fc))
33
+ * Skip the experiemental build workflow if a release commit is pushed to master ([3dab0b3](https://github.com/ruby-git/ruby-git/commit/3dab0b34e41393a43437c53a53b96895fd3d2cc5))
34
+
35
+ ## [3.0.2](https://github.com/ruby-git/ruby-git/compare/v3.0.1...v3.0.2) (2025-05-15)
36
+
37
+
38
+ ### Bug Fixes
39
+
40
+ * Trigger the release workflow on a change to 'master' insetad of 'main' ([c8611f1](https://github.com/ruby-git/ruby-git/commit/c8611f1e68e73825fd16bd475752a40b0088d4ae))
41
+
42
+
43
+ ### Other Changes
44
+
45
+ * Automate continuous delivery workflow ([06480e6](https://github.com/ruby-git/ruby-git/commit/06480e65e2441348230ef10e05cc1c563d0e7ea8))
46
+ * Enforce conventional commit messages with a GitHub action ([1da4c44](https://github.com/ruby-git/ruby-git/commit/1da4c44620a3264d4e837befd3f40416c5d8f1d8))
47
+ * Enforce conventional commit messages with husky and commitlint ([7ebe0f8](https://github.com/ruby-git/ruby-git/commit/7ebe0f8626ecb2f0da023b903b82f7332d8afaf6))
48
+
49
+ ## v3.0.1 (2025-05-14)
50
+
51
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v3.0.0..v3.0.1)
52
+
53
+ Changes since v3.0.0:
54
+
55
+ * b47eedc Improved error message of rev_parse
56
+ * 9d44146 chore: update the development dependency on the minitar gem
57
+ * f407b92 feat: set the locale to en_US.UTF-8 for git commands
58
+ * b060e47 test: verify that command line envionment variables are set as expected
59
+ * 1a5092a chore: release v3.0.0
60
+
61
+ ## v3.0.0 (2025-02-27)
62
+
63
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.3.3..v3.0.0)
64
+
65
+ Changes since v2.3.3:
66
+
67
+ * 534fcf5 chore: use ProcessExecuter.run instead of the implementing it in this gem
68
+ * 629f3b6 feat: update dependenices
69
+ * 501d135 feat: add support for Ruby 3.4 and drop support for Ruby 3.0
70
+ * 38c0eb5 build: update the CI build to use current versions to TruffleRuby and JRuby
71
+ * d3f3a9d chore: add frozen_string_literal: true magic comment
72
+
73
+ ## v2.3.3 (2024-12-04)
74
+
75
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.3.2..v2.3.3)
76
+
77
+ Changes since v2.3.2:
78
+
79
+ * c25e5e0 test: add tests for spaces in the git binary path or the working dir
80
+ * 5f43a1a fix: open3 errors on binary paths with spaces
81
+ * 60b58ba test: add #run_command for tests to use instead of backticks
82
+
83
+ ## v2.3.2 (2024-11-19)
84
+
85
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.3.1..v2.3.2)
86
+
87
+ Changes since v2.3.1:
88
+
89
+ * 7646e38 fix: improve error message for Git::Lib#branches_all
90
+
91
+ ## v2.3.1 (2024-10-23)
92
+
93
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.3.0..v2.3.1)
94
+
95
+ Changes since v2.3.0:
96
+
97
+ * e236007 test: allow bin/test-in-docker to accept the test file(s) to run on command line
98
+ * f4747e1 test: rename bin/tests to bin/test-in-docker
99
+ * 51f781c test: remove duplicate test from test_stashes.rb
100
+ * 2e79dbe Fixed "unbranched" stash message support:
101
+ * da6fa6e Conatinerised the test suite with Docker:
102
+ * 2e23d47 Update instructions for building a specific version of Git
103
+ * 70565e3 Add Git.binary_version to return the version of the git command line
104
+
105
+ ## v2.3.0 (2024-09-01)
106
+
107
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.2.0..v2.3.0)
108
+
109
+ Changes since v2.2.0:
110
+
111
+ * f8bc987 Fix windows CI build error
112
+ * 471f5a8 Sanatize object ref sent to cat-file command
113
+ * 604a9a2 Make Git::Base#branch work when HEAD is detached
114
+
115
+ ## v2.2.0 (2024-08-26)
116
+
117
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.1.1..v2.2.0)
118
+
119
+ Changes since v2.1.1:
120
+
121
+ * 7292f2c Omit the test for signed commit data on Windows
122
+ * 2d6157c Document this gem's (aspirational) design philosophy
123
+ * d4f66ab Sanitize non-option arguments passed to `git name-rev`
124
+ * 0296442 Refactor Git::Lib#rev_parse
125
+ * 9b9b31e Verify that the revision-range passed to git log does not resemble a command-line option
126
+ * dc46ede Verify that the commit-ish passed to git describe does not resemble a command-line option
127
+ * 00c4939 Verify that the commit(s) passed to git diff do not resemble a command-line option
128
+ * a08f89b Update README
129
+ * 737c4bb ls-tree optional recursion into subtrees
130
+
131
+ ## v2.1.1 (2024-06-01)
132
+
133
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.1.0..v2.1.1)
134
+
135
+ Changes since v2.1.0:
136
+
137
+ * 6ce3d4d Handle ignored files with quoted (non-ASCII) filenames
138
+ * dd8e8d4 Supply all of the _specific_ color options too
139
+ * 749a72d Memoize all of the significant calls in Git::Status
140
+ * 2bacccc When core.ignoreCase, check for untracked files case-insensitively
141
+ * 7758ee4 When core.ignoreCase, check for deleted files case-insensitively
142
+ * 993eb78 When core.ignoreCase, check for added files case-insensitively
143
+ * d943bf4 When core.ignoreCase, check for changed files case-insensitively
144
+
145
+ ## v2.1.0 (2024-05-31)
146
+
147
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.0.1..v2.1.0)
148
+
149
+ Changes since v2.0.1:
150
+
151
+ * 93c8210 Add Git::Log#max_count
152
+ * d84097b Update YARDoc for a few a few method
153
+
154
+ ## v2.0.1 (2024-05-21)
155
+
156
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.0.0..v2.0.1)
157
+
158
+ Changes since v2.0.0:
159
+
160
+ * da435b1 Document and add tests for Git::Status
161
+ * c8a77db Fix Git::Base#status on an empty repo
162
+ * 712fdad Fix Git::Status#untracked when run from worktree subdir
163
+ * 6a59bc8 Remove the Git::Base::Factory module
164
+
165
+ ## v2.0.0 (2024-05-10)
166
+
167
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.0.0.pre4..v2.0.0)
168
+
169
+ Changes since v2.0.0.pre4:
170
+
171
+ * 1afc4c6 Update 2.x release line description
172
+ * ed52420 Make the pull request template more concise
173
+ * 299ae6b Remove stale bot integration
174
+ * efb724b Remove the DCO requirement for commits
175
+
176
+ ## v2.0.0.pre4 (2024-05-10)
177
+
178
+ [Full Changelog](https://jcouball@github.com/ruby-git/ruby-git/compare/v2.0.0.pre3..v2.0.0.pre4)
179
+
180
+ Changes since v2.0.0.pre3:
181
+
182
+ * 56783e7 Update create_github_release dependency so pre-releases can be made
183
+ * 8566929 Add dependency on create_github_release gem used for releasing the git gem
184
+ * 7376d76 Refactor errors that are raised by this gem
185
+ * 7e99b17 Update documentation for new timeout functionality
186
+ * 705e983 Move experimental builds to a separate workflow that only runs when pushed to master
187
+ * e056d64 Build with jruby-head on Windows until jruby/jruby#7515 is fixed
188
+ * ec7c257 Remove unneeded scripts to create a new release
189
+ * d9570ab Move issue and pull request templates to the .github directory
190
+ * e4d6a77 Show log(x).since combination in README
191
+
192
+ ## v2.0.0.pre3 (2024-03-15)
193
+
194
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.0.0.pre2..v2.0.0.pre3)
195
+
196
+ Changes since v2.0.0.pre2:
197
+
198
+ * 5d4b34e Allow allow_unrelated_histories option for Base#pull
199
+
200
+ ## v2.0.0.pre2 (2024-02-24)
201
+
202
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v2.0.0.pre1..v2.0.0.pre2)
203
+
204
+ Changes since v2.0.0.pre1:
205
+
206
+ * 023017b Add a timeout for git commands (#692)
207
+ * 8286ceb Refactor the Error heriarchy (#693)
208
+
209
+ ## v2.0.0.pre1 (2024-01-15)
210
+
211
+ [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v1.19.1..v2.0.0.pre1)
212
+
213
+ Changes since v1.19.1:
214
+
215
+ * 7585c39 Change how the git CLI subprocess is executed (#684)
216
+ * f93e042 Update instructions for releasing a new version of the git gem (#686)
217
+ * f48930d Update minimum required version of Ruby and Git (#685)
218
+
8
219
  ## v1.19.1 (2024-01-13)
9
220
 
10
221
  [Full Changelog](https://github.com/ruby-git/ruby-git/compare/v1.19.0..v1.19.1)