im pretty new to unreal and was setting up a new repo to work with an artist for the coming gamejam.
One thing i noticed is: although the github gitignore template ignores the binaries folder, the artist is unable to open/recompile the project when i change a single line of code (adding classes, changing classes etc.).
Also: Everytime i make changes in code there are added new .dll and .pdb files as seen in the screenshot.
Is it correct to NOT ignore the binaries folder with its .dll and .pdb files in it? Isnt the project going to become very huge very fast as those .pdb files are around ~25mb big in size?
You should have a way of sharing binary files with artists, but git is not appropriate for that, since the repository would be huge.
Use another file sharing tools using the cloud (Dropbox, Drive…)
So it is normal that all those files with numbers are generated each time i make a change in code?
That is pretty weird as they disappear when i remove the binary folder manually and recompile it. Why are they generated in the first place then and is there a way to turn that off?
They are build with numbers when you compile while the Editor is running, for Hot-Reload, ie your changes in code are applied live to your game in the editor!
To clean them you just have to close the editor, than recompile, et voilà !
DLL can’t be deleted whole process using them is running that why UBT creates another copy and editor swaps the modules in memory. New PBD needs to be created in progress, note PDB is not needed for artist, this fine is only needed for code debugging.
I strongly disagree with that, sharing Binary files is fine with git as long as you share only the necessary ones, the only time where git really fails is when it comes to uploading heavy files like textures, HDRIs or music.
I am currently using GitLab for source control (for myself only) with a peak upload speed of 64KB/s and I can say that it never took me more than a minute to push anything to source control (although I don’t push textures, so these do have to be sent another way around but currently I only use starter content textures)
I know this question is old and I hope you got your answer already but for the record:
Everything ignored by the default .gitignore can be rebuilt one way or another, I’ve also already done some playing with source control myself and it usually is fine as long as you recompile but if something breaks for someone (i.e. launcher not opening at all as you said) they usually have to:
1 - Right click in the .uproject file and select “Generate Visual Studio project files”
2 - Open the visual studio .sln file and open it
3 - In Visual Studio: press Build → Build Solution or Ctrl + F9
4 - Double click the .uproject file in order to open it.
I hope this helps someone in the future as this is the first result in Google when searching “binaries win64 pdb file ue4”
I was hoping I’d find an answer about whether it’s safe to delete them or not, I am almost sure it is safe to delete them but I don’t want to rebuild everything, here’s a screenshot of my Binaries/Win64 folder:
Note that every UE4Editor-ProjectName-0000.pdb has a size between 27 and 28MB and that the main ProjectName.pdb file has a size of 116MB, the whole folder takes 3.45GB and I’m fairly sure (at 99.99%) that sharing this with your artist would be completely pointless (unless you want to share the debug info, but even then you should probably only send the most recent one or something)