Cabbage Logo
Back to Cabbage Site

Using Git for version control

I’ve been trying to teach myself Git over the past months, and I was wondering if anyone uses it for their csound/cabbage projects. I’ve primarily been using it to manage some c projects, and was wondering if anyone has some thoughts on using it with csound.



I have used it quite a lot for this stuff. I find it invaluable, especially when collaborating with others.

I guess what I’m asking is how you are breaking things up? Do csound files that are intended to be used as libraries get their own repository? Or do you have one repository for everything? I also figure that there really isn’t anything special in dealing with .csd files. Just trying to figure out what things get their own repository.

Also, on a related note, does cabbage offer any kind of command line interface? I’m thinking that if I could include in my make file, a command line option for exporting a vst file, then the whole process of compiling a vst plug-in could be automated. But I’m sure if this becomes a feature request, it would be low priority, of at all.



It really depends on the project. Often I’ll keep a collection of .csd files, sometimes it’s only one.

Yes, this is already possible and was added for exactly this purpose. Couple it with a CI service like github actions and you can prepare cross-platform binaries for your plugins. albeit with a fair amount of setting up time. But once it’s ready, you don’t need to change a thing.

1 Like

Is there some docs that describe how to use it?

Docs? :rofl: Only the source code. It’s not something I’ve ever hidden from users, but I don’t think I’ve ever actually documented it. Maybe somewhere on the forum. I’ll do a search…

I’ll try to throw together a simple example for you tomorrow. I can’t find anything concrete on the forum.

Don’t work too hard on it, it will give me a chance to check out the source.

This is the where the magic happens:

Thanks, Rory! You forced me to learn something new. I’ve never seen the keyword ‘auto’ used in c before… I’ll have to try this when I get home tonight!

1 Like