Skip to content

Replace git submodules #635

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Oct 22, 2022
Merged

Replace git submodules #635

merged 9 commits into from
Oct 22, 2022

Conversation

kamijin-fanta
Copy link
Member

Background

  • Fetching icon set repository with git submodules
  • Clone was taking a very long time. (20 minutes or more depending on the environment)
  • It took a lot of disk space.
  • Editors such as VS Codes have poor performance in repositories with many submodules

Changes

  • Introduced fetcher instead of git submodules. This is a git wrapper script.
  • Get the files by running git clone --filter=tree:0 --no-checkout **** **** git sparse-checkout set --cone ****. It contains only the files required by the project.
  • Significantly reduced network transfer and disk consumption.
  • Also, execute this up to 10 processes in parallel.

Speed up CI

CI execution time has been cut in half.

  • Before improvement: 11~14 minutes
  • After improvement: 6~7 minutes

Icon fetch speeds up to x12!

  • Before: 4m 6s
  • After improvement: 0m 20s

Since CI used --depth=1 before the improvement, the improvement in the local environment that does not use this option is even greater.

https://github.com/react-icons/react-icons/actions/runs/3259585247/jobs/5352517027
https://github.com/react-icons/react-icons/actions/runs/3302010699/jobs/5448273312

@kamijin-fanta kamijin-fanta added this to the next milestone Oct 22, 2022
@kamijin-fanta kamijin-fanta self-assigned this Oct 22, 2022
@kamijin-fanta kamijin-fanta merged commit 5474321 into master Oct 22, 2022
@kamijin-fanta kamijin-fanta deleted the dev-implove branch March 3, 2023 03:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant