Skip to content

Fix/replace svn with git sparse checkout#338

Open
weijing24 wants to merge 3 commits into
z-shell:mainfrom
weijing24:fix/replace-svn-with-git-sparse-checkout
Open

Fix/replace svn with git sparse checkout#338
weijing24 wants to merge 3 commits into
z-shell:mainfrom
weijing24:fix/replace-svn-with-git-sparse-checkout

Conversation

@weijing24
Copy link
Copy Markdown

@weijing24 weijing24 commented Mar 11, 2026

GitHub sunset SVN support in January 2024, breaking the svn ice used to download subdirectories (e.g., OMZ plugins). This replaces the SVN implementation with git sparse-checkout which provides the same subdirectory cloning capability using native git.

Changes:

  • ZI_1MAP: remove /trunk/ from URLs (no longer needed for git)
  • .zi-mirror-using-svn(): rewrite to use git clone --no-checkout --depth=1 --filter=tree:0 + git sparse-checkout
  • side.zsh: detect .git in addition to .svn for existing snippets
  • autoload.zsh: use git status when .git dir is present

Description

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update (if none of the other choices apply)
  • Chore (general maintenance, refactoring, or code style update)

Checklist:

  • My code follows the code style of this project.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • I have updated the documentation accordingly.

Other information (if applicable)

GitHub sunset SVN support in January 2024, breaking the `svn` ice
used to download subdirectories (e.g., OMZ plugins). This replaces
the SVN implementation with git sparse-checkout which provides the
same subdirectory cloning capability using native git.

Changes:
- ZI_1MAP: remove /trunk/ from URLs (no longer needed for git)
- .zi-mirror-using-svn(): rewrite to use git clone --no-checkout
  --depth=1 --filter=tree:0 + git sparse-checkout
- side.zsh: detect .git in addition to .svn for existing snippets
- autoload.zsh: use git status when .git dir is present
Git sparse-checkout preserves directory structure and cone mode
checks out root files. Fix by cloning to temp dir with --no-cone,
then copying only subpath contents to target directory.
@weijing24 weijing24 requested a review from a team as a code owner March 11, 2026 14:56
@weijing24
Copy link
Copy Markdown
Author

Can anybody check this pr ?

@ss-o ss-o self-assigned this Mar 22, 2026
@github-actions
Copy link
Copy Markdown

There hasn't been any activity on this pull request recently, and in order to prioritize active work, it has been marked as stale.
This PR will be closed and locked in 7 days if no further activity occurs.
Thank you for your contributions!

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

Pull Request closed and locked due to lack of activity.
If you'd like to build on this closed PR, you can clone it using this method: https://stackoverflow.com/a/14969986
Then open a new PR, referencing this closed PR in your message.

@github-actions github-actions Bot locked and limited conversation to collaborators May 7, 2026
@ss-o ss-o removed the stale 👻 label May 16, 2026
@ss-o ss-o reopened this May 16, 2026
@ss-o ss-o requested a review from Copilot May 16, 2026 06:40
@ss-o
Copy link
Copy Markdown
Member

ss-o commented May 19, 2026

This PR has been open since March 11 without updates. The SVN removal work has been addressed differently in the main branch (via z-a-meta-plugins).

Could you rebase this on next and resolve the conflicts? If the SVN→sparse-checkout approach is still the intended direction for zi core, we'd be happy to review an updated version. Otherwise we may close this in ~2 weeks.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants