Would somebody mind 'splaining to a newb how github or similar would be useful relative to touchdesigner? My impression is that one could have a repository of .tox components on github, then use “External .tox” field in TD containers to reference the latest version of components from the cloud… or is that not really what it’s meant for?
Git’s main job is managing version control on interrelated files in a project tree.
The use case you describe can also be easily solved by using Dropbox, and working this way pretty much rules since you’ve basically got a bag of .tox tricks that is with you wherever you go.
What Git could do for you though is allow you to add notes and comments to new revisions of toxes you create, flip through a history of different revisions of a tox (or other file type), fork off a branch into two or more different development paths (i.e.: multiple varieties of a given tox, specialized in certain ways). This is mostly useful (to me anyway), when collaborating with multiple people on a project, but it’s also useful if you are making something that you expect to grow and evolve. Since Git encourages organization and documentation, projects following its templates are easier to support.
git fits into my current TouchDesigner workflow by giving me an easy way to manage all of the scripts that I write in relation to a project. I often find that I have new ideas for how to extend the functionality of a Python script before I’ve finished implementing another feature and git’s branching makes it easy to keep a working copy of your scripts (this is your master branch) while you work on implementing other features (on one branch for a bug fix, on another branch for a new feature, etc…).
I actually do use dropbox for all of my files. I’m mainly wondering if there’s a good way to have these files documented and versioned online, and a way to grab the latest versions from within TD, rather than:
lookup latest version on github (or whatever online service)
find the same file on your local drive
drag file into Touch
manually repeat process whenever you want to update a component in your project
I may be trying to hard to be automated here. Just wanted to know if there is some obvious process the pros are using that would make touchdesigning more efficient.
That is definitely the crux of the creative process!
Good to know that git isn’t meant for large files. Guess I am still thinking about things from a CAD/Adobe perspective rather than a programmer’s perspective.
the codeacademy course nicwolf1 recommended is how I learned about Git. It’s a really awesome primer! Even if you don’t wind up using it later, the course takes about 40 minutes and once you’re done you pretty much know what git is and what it can offer you.