Hello, I've read on the web of one person using Git to work on his pd patches. Someone on this forum uses it? What is your workflow with this software?
-
Using Git to work with pd patches
-
Git for PD or Git for any software is the same pipeline. You create a repository (ie: on github), you
git add yourfiles
thengit push
and finally yougit commit -m "modify this"
.Or maybe I didn't understand your question?
-
I've never used this software before, I've installed it, learn the basics through the Documentation on the Git website and started trying it, but I'd like to know if someone use it and how. For example I have a folder where I have all my pd patches kept in different folders divided by every patch that I'm working on; should I create a Repo for every single project or a Repo of the entire folder?
-
It's up to you: 1 repo for all your work or 1 repo per project.
If you don't mind sharing your patches, then you can use github.com or similar free git server. For example, here's my repository for the mtl abstractions: https://github.com/patricksebastien/mtl
The nice thing about using git is that other people can pull request their modifications, so it's a nice way to collaborate on a project.
-
Ok, for example in your Github where you have a lot of pd patches when you work on a specific patch you make a specific branch and then merge it? Or you always make commits to the master branch?
-
In my case, I'm always working on the master branch (making local modifications and then push to master). Git is smart enough to know which files were modified and only commit those. Also you can always go back in time if need be.
-
And with all your projects inside the same repo you divide the commits per project or make commits with files from different projects?
-
mtl abstractions is 1 library / project = 1 repository. I have other repositories for other pd related projects, for example: https://github.com/patricksebastien/loopStationPD (<- using some patches from mtl abstractions).
Like I said you decide how to structure git. If you have many patches that do many things, then it's kind of a library = 1 repository. But if you have patches that belong to a specific project / installation / piece, maybe you should create a separate repository for it.