+2
Pending Review

gitignore for Bolt projects?

Federico Meini 3 years ago updated by Rakka Rage 2 years ago 16

Hi,

What should I add to my project's .gitignore when using Bolt?

I think I need to ignore some Bolt temporary files/folders otherwise just opening the Unity project on a new machine causes a lot of changes in the repo. I also get weird errors like:

Assertion failed: Removing Assets/Plugins/Assemblies/Ludiq.Graphs.Editor.pdb because the asset does not exist


Bolt Version:
Unity Version:
Platform(s):
Scripting Backend:
.NET Version (API Compatibility Level):

Of course I meant when versioning a Unity project using Git

here's what i have in my .gitignore for Bolt:

# Bolt Visual Scripting Tool
[Ee]ditor Default Resources/
[Pp]lugins/
[Bb]ackups/
[Gg]enerated/
Editor Default Resources.meta
Plugins.meta
Assets/Generated/Ludiq.Core/AotStubs.cs

i guess that will all change once we upgrade to 1.3.

And what about the following path/files?



It would be nice to have a page in Bolt's manual about hot to use Bolt together with GIT :)

Your only concern should be things that directly have to do with your project. You should commit the different variables assets for scene and application, possibly your unit options if you choose, and maybe project settings, but the assemblies should not be committed. Those you can just straight up download as is from build section or asset store, and pulling your past committ would replace just those project specific things. Anything else and your probably going to have issues being on different versions and pulling.

+2
Pending Review

Good idea, I'll add a documentation page with 1.3's new folder structure.

+1

Thanks a lot, really appreciate your work.

Hi, just wanted to ask for updates now that 1.3 is stable.
Are you going to update this ticket once the instructions are added to the manual?

Thanks a lot and sorry for stressing you out, it's just that I am working on the same Bolt project on more than one PC (work and home) syncing them via git and I am having quite some troubles

Off the top of my head, I think all you need to exclude in v.1.3 is the generated folders, so:

Ludiq/*/Generated/
Ludiq/*/Generated.meta


Do you mean include?  I'm totally new to this, so forgive me if I'm wrong.  I'm just trying to piece this together from this thread and this seemed contradictory to info you posted below.

+1

fwiw, here's my new .gitignore entries for Bolt, after updating to 1.3.0:

# Bolt Visual Scripting Tool
Assets/Ludiq/Assemblies/
Assets/Ludiq/Bolt/
Assets/Ludiq/Bolt.Core/Generated/*.meta
Assets/Ludiq/Bolt.Core/Generated/Variables/*.meta
Assets/Ludiq/Bolt.Core/Generated/Variables/Resources/*.meta
Assets/Ludiq/Ludiq.Core/DotNetDocumentation/
Assets/Ludiq/Bolt.Flow/Generated/
Assets/Ludiq/Bolt.State/Generated/
Assets/Ludiq/Ludiq.Core/Generated/
Assets/Ludiq/Ludiq.Graphs/Generated/
Assets/Ludiq/*/IconMap/
Assets/Ludiq/*/*.root
Assets/Ludiq/*/*.meta
Assets/Ludiq/*.meta
Assets/*.meta
Backups/


+1

I'm curious, at this point, why not exclude Bolt entirely? What are you trying to preserve in your commit actually?

If you just want to keep the variables and require each person to install Bolt manually, you should still not exclude the *.meta files of the variables assets.

All I would like to preserve are the graphs and the variables. I have just started with Bolt so I have no idea where those are saved. Basically I would just need to sync everything I do or edit in Bolt (graphs, nodes, variables, super units) across all the machines that share the same Unity project through git.

Example: I change something in a flow graph on my home machine and I commit and push to git. I am then at my work machine and I pull from git and I would like to continue working on that flow graph.

+1

In that case, the only thing you need to preserve is:

Assets/Ludiq/Bolt.Core/Generated/Variables/Resources/

For Application and Saved variables.

Graphs are stored either in macros or machine components if they are embeds.

Graph variables are stored within the graphs themselves.

Object variables are stored on the Variables component on the game objects in your scene.

Scene variables are stored on the Variables component of a special scene singleton automatically created for you, called "Scene Variables".

+1

ignore the whole Ludiq directory and meta it should not go up to github and can be downloaded at any time so no record needed

Ludiq*
bin/
obj/
Temp/
Obj/
Library/
AssetStoreTools*
.vs/
.vscode/
*.suo
*.sln
*.csproj

Hey there!
Would love to know what i should add to my git ignore in order to not bloat the entire project.

I don't think I need to preserve the actual code for bolt to run, but whatever is relevant to my saved data (graphs, variables, etc) and maybe some-file specifying bolt version?

Thank you very much in advance (: