-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
Use git submodules for tilesets, mods and languages #28707
Comments
somewhat relevant, id also like to suggest the downloads be smaller as well. like to only ship with english and the current default tileset. if possible along with excluding mods and fonts too. im not trying to be offensive in the slightest, but i feel sorry for the narc.ro owners, i dont know how much they spend on bandwidth. |
FWIW you can just take a shallow clone when you do this |
http://dev.narc.ro/awstats/awstats.pl?month=03&year=2019&output=downloads&config=dev.narc.ro |
I'm already doing it for building upstream, of course. But I had problems pushing upstream changes into my development fork from local shallow clone. |
|
Tried that . But maybe it wasn't deep enough. Will try again later, thanks. |
You can repeatedly call fetch with deepen and it will deepen it by another $NUM commits each time. |
I've considered it before, I'm not a fan of using git submodule, but simply moving tiles elsewhere is a possibility. However, AFAIK this isn't a major problem at this time since we can simply shallow copy as people have outlined. |
This came up again briefly in #43986 and just for anyone looking here in the future: CI needs this change for git submodules support --- a/.github/workflows/matrix.yml
+++ b/.github/workflows/matrix.yml
@@ -36,9 +36,10 @@ jobs:
SANITIZE: ${{ matrix.sanitize }}
steps:
- name: checkout repository
- uses: actions/checkout@v1
+ uses: actions/checkout@v2
with:
fetch-depth: 10
+ submodules: true
- name: install dependencies
run: |
sudo apt-get update |
No pressure, just a relevant link: https://gist.github.com/korya/9047870 |
Problem
Without using
--depth
option current repository clone already takes almost 2GiB of space. And most of this space is in the.git
folder.Solution
AFAIU its' growth speed can be reduced significantly if tilesets and mods (and optionally l10n files for languages) will be moved into separate repositories by using
git submodule
. This way when cloning and building yourself you will only download what you actually need. Cons may include additional steps during automated builds.Edit: and of course setting this all up is additional work. Posting this suggestion just in case dev team haven't considered this solution or didn't have a chance to reconsider lately.
The text was updated successfully, but these errors were encountered: