Skip to content
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

Support lfs and submodules #3806

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

sigurdm
Copy link
Contributor

@sigurdm sigurdm commented Feb 28, 2023

Use a worktree instead of a full clone to check out each revision for a git source.

This seems to enable git lfs to just work somehow
This should also reduce the disk consumption, as we don't have to repeat the .git folder.

Also run git submodule update --init --recursive in each worktree after checking it out.

This should enable submodules. It is a nop, and quite fast if there are no submodules.

Still some kinks to work out with backwards compatibility, but I think it could be made to work at least upwards. (doing cache repair with an older dart sdk will probably break).

@sigurdm
Copy link
Contributor Author

sigurdm commented Apr 25, 2023

TODO: write a spec for the cache layout (this needs to include the old layout, naming conventions etc).

This can live as an md file in doc/pub-cache.md

@sigurdm
Copy link
Contributor Author

sigurdm commented Apr 25, 2023

(after offline discussion) Let's try this without the submodule support (just yet) there are still some open questions.

It is possible that use of sub-modules will conflict with future ideas, such as resolving by version-tags...

@sigurdm
Copy link
Contributor Author

sigurdm commented Apr 25, 2023

We should also find out and document which version of git we require for this to work.

@sigurdm
Copy link
Contributor Author

sigurdm commented May 2, 2023

We should find out how far back git includes worktree support, and require that as a minimum git version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant