Download Latest Version gix v0.75.0 source code.tar.gz (10.6 MB)
Email in envelope

Get an email when there's a new version of gitoxide

Home / gix-v0.75.0
Name Modified Size InfoDownloads / Week
Parent folder
gix v0.75.0 source code.tar.gz 2025-11-22 10.6 MB
gix v0.75.0 source code.zip 2025-11-22 11.7 MB
README.md 2025-11-22 4.0 kB
Totals: 3 Items   22.3 MB 0

New Features

  • add Repository::worktree_proxy_by_id(id). That way it's more straightforward to obtain information about worktrees which are known by ID.
  • add Handshake::ref_map() to produce a ref-map from a V1 or V2 handshake.
  • add Repository::set_workdir(). Force this repository instance to use the given worktree directory.

Bug Fixes

  • refspec for shallow clones uses a single-branch When doing shallow clones (depth != NoChange), it now uses a single-branch refspec instead of fetching all branches. This matches Git's behavior and significantly reduces the repository size for shallow clones.

For shallow clones: - If ref_name is specified: uses that branch - Otherwise: attempts to detect from Protocol V1 handshake or falls back to init.defaultBranch config or "main"

This addresses issue [#2227] where gix clone --depth 1 was creating repositories ~130MB vs Git's ~70MB due to fetching all branches.

Bug Fixes (BREAKING)

  • respect diff.algorithm in Repository::blame_file
  • make gix-transport I/O mode features additive

Refactor (BREAKING)

  • simplify gix-protocol handshake API by avoiding duplicates that remove the server parameter.
  • hoist handshake ref handling out of transport code
  • store all_refspecs in Options
  • store fetch refspecs in Options
  • flatten RefMap::new() arguments

Commit Statistics

  • 35 commits contributed to the release.
  • 11 commits were understood as conventional.
  • 1 unique issue was worked on: [#2227]

Commit Details

<csr-read-only-do-not-edit/>

view details * **#2227** - Refspec for shallow clones uses a single-branch (f7700e4) * **Uncategorized** - Merge branch 'copilot/fix-issue-2258' (b20d9e9) - Fix dead code warnings in gix and gitoxide-core (b170451) - Merge pull request #2250 from djc/rm-handshake-layers (3c2b422) - Bring the `service` parameter back to not hardcode the handshake for fetches. (c9a97db) - Simplify gix-protocol handshake API by avoiding duplicates that remove the `server` parameter. (36c2be8) - Merge pull request #2252 from GitoxideLabs/improvements (2f14246) - Add `Repository::worktree_proxy_by_id(id)`. (a004329) - Merge pull request #2249 from iczero/fetch-performance-fix (c3beb20) - Move worktree_branches call out of loop (37e7e02) - Merge pull request #2242 from djc/ls-refs (0ac3080) - Add `Handshake::ref_map()` to produce a ref-map from a V1 or V2 handshake. (aeee982) - Adapt to changes in `gix-protocol`: Outcome -> Handshake (a61b2ab) - Refactor (48fdf5d) - Hoist handshake ref handling out of transport code (19a0051) - Store all_refspecs in Options (50120de) - Store fetch refspecs in Options (37ab036) - Flatten RefMap::new() arguments (f05dfab) - Merge pull request #2238 from GitoxideLabs/copilot/update-refspec-parsing-logic (c2c1a61) - Refactor (ba2301f) - Merge pull request #2248 from GitoxideLabs/improvements (c400dd3) - Adapt to changes in `gix-date` (2bcac0c) - Merge pull request #2247 from GitoxideLabs/improvements (3087b76) - Adapt to changes in `gix-date` (d5e194d) - Merge pull request #2229 from GitoxideLabs/copilot/fix-refspec-for-shallow-clone (bc62b1e) - Refactor (c331afc) - Merge pull request #2197 from cruessler/add-tests-for-slider-problem (ab44f45) - Merge pull request #2240 from cruessler/add-gix-repository-blame-options (385ab16) - Refactor (2a187ca) - Respect `diff.algorithm` in `Repository::blame_file` (bb2cec0) - Merge pull request #2204 from cruessler/improve-blame-ranges (663b41e) - Add `Repository::set_workdir()`. (0ed0164) - Merge pull request #2236 from djc/additive-transport (6e89afa) - Make gix-transport I/O mode features additive (c2050d0) - Merge pull request #2230 from yuki0iq/doc_auto_cfg (fbf9c39)
Source: README.md, updated 2025-11-22