Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
$from='C:\temp\dev'; $to='C:\temp\release'; New-Item -ItemType Directory -Force -Path $to; ForEach($item in Get-ChildItem -Force $from){if($item.Name -in @(".git",".gitignore")){continue;} New-Item -Force -ItemType SymbolicLink -Target "$from\$item" -Path "$to\$item";}
You run this once and you're done. Unless you add something at top level, then you can delete $to and run again.
For bash and linux there is `ln -s`.
`New-Item -ItemType SymbolicLink` requires admin rights.
https://en.wikipedia.org/wiki/Symbolic_link
Of course it's your call and here it's only 1.6MB out of 2.6MB, for some other mod it is 2.3GB out of total 2.8GB.
All depends on how you (ab)use git.
Instead of removing it each time, move entire "development" version of mod to another location, and then make symbolic links to "release" version (the one you're using right now). Everything you change in "development" will automatically change in "release", sans ".git". "release" is just pointers to data in "development" or "shortcuts", the real data is in "development".
I don't see a single reason why players would need 1.6MB (out of 2.6MB total) of VCS files.
If you want other people to be able to contribute to this mod, GitLab/GitHub is a better medium than Steam Workshop.
You also should check git LFS, the reason 62% of your mod size is ".git" folder is because you store binary files in plain git (it can be seen via e.g. `git rev-list --objects --all | grep .dds`).
Git was not designed for this and will bloat ad infinitum.
Git LFS was designed to augment git with the ability to handle binaries inside git efficiently.
Best regards.