1
\$\begingroup\$

I am facing a problem with my UE5 project: I am hitting the maximum amount of space my current account allows for git, including LFS.

Some assets are very large, so I cannot use anymore my git provider, unless I ramp up my account pricing tier... which I am unable to afford at the moment.

So, how could I still manage large assets so that they reside outside of the repo?

The target is still be able to collaborate through git... I am dreaming of Unreal, upon cloning/pulling asking "You have assets that need to be downloaded", but my hopes are not high.

A manual solution would also be ok, but I am wary of putting asset names in the README and adding them, I am afraid this would generate conflicts. A related question does not actually answer this, but it's a good start.

\$\endgroup\$
2
  • 2
    \$\begingroup\$ Have you considered placeholder assests that are smaller in size that can achieve the same result as your end assets? This pushes the issue just further to the end, but it might be a working solution until you fix the real issue. You could setup as well a local server where you store the too big ressources (like using an old laptop acting as server) \$\endgroup\$
    – Zibelas
    Commented May 14 at 10:58
  • \$\begingroup\$ Unfortunately, yes, we use simple assets but I am looking for a more stable solution. We've used also a local server but you know, I don't trust our old PCs as servers... \$\endgroup\$
    – senseiwa
    Commented May 14 at 15:49

1 Answer 1

0
\$\begingroup\$

I would try using nested git project directory first. Git will automatically ignore folders with .git subfolders. You can use different accounts to create multiple git projects and host project files in different repository. It is invisible to users and you can use it as a normal project directory:

/project_folder
    /.git
    /large_assets_folder1
        /.git
        /some_assets_files
        /some_assets_files
    /large_assets_folder2
        /.git
        /some_assets_files
        /some_assets_files

This brings additional operational complexity, and you need to perform version control on files in different repository separately. But it can solve your problem instantly.

So, how could I still manage large assets so that they reside outside of the repo?

For this specific problem, you can simply add the assets folder to the .ignore file to exclude it from version control. In this way, you need to use other channels to distribute asset files, such as ftp server, network disk, etc.

The target is still be able to collaborate through git... I am dreaming of Unreal, upon cloning/pulling asking "You have assets that need to be downloaded", but my hopes are not high.

As far as I know this is not possible. Asset distribution involves authentication. It is difficult for Unreal to determine whether you have permission to download an asset. Additionally, if assets are re-edited during development, they cannot be synced to other developers this way.

We've used also a local server but you know, I don't trust our old PCs as servers.

A local server is the most promising solution in my opinion. If you don't trust your old PC, you can buy a Single-board-computer as a server. Git is not a performance-intensive function, and computer with low power consumption and stability would be a good choice. In terms of price, it is much cheaper than cloud servers or git providers, you only need a single board computer and a large hard drive.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .