Page 1 of 2

Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 12:57 am
by Angstrom
For those who don't understand versioning - it allows an author to track changes to a file and to roll back those changes, or to merge different versions (branches).
I often make a mix or arrangement variations such as a "dub version" and often in that variation I do something I'd like to merge into the "main" version.
.als files are actually xls files, that's an Excel spreadsheet, just try changing the suffix to .xls and open the file to see what I mean.

So, I optimistically tried adding an ableton project to a local GIT repository, with the idea of maintaining project versioning branches, merges, etc.
of course, xls files are binaries, binaries are not gonna diff.

So I found some people talking about version control on xls, but I can see peril this way and will probably just abandon my experiments.
https://stackoverflow.com/questions/170 ... schema-fil

But I'm curious if anyone has ever experimented with this and Ableton projects, and what you found, if anything.
bit of a weird idea, I know!

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 3:43 am
by ecuk
Angstrom wrote: .als files are actually xls files, that's an Excel spreadsheet, just try changing the suffix to .xls and open the file to see what I mean.
Great idea, Git with Live, but this Excel trick doesn't work for me. It appears to me that .als files are nothing fancier than gzipped XML (plain text) files. Try gunzip and then open with your favourite text editor.

I have never had much luck with Git and binary files. However, given that these appear to be text, non-binary XML files, it should be possible to write some simple shell scripts that unzip and rezip the file, sandwiching whatever Git goodness you want in between.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 11:23 am
by Stromkraft
Angstrom wrote: But I'm curious if anyone has ever experimented with this and Ableton projects, and what you found, if anything.
bit of a weird idea, I know!
I use Mercurial with the Sourcetree app. This GIT thing is for the hipsters. :mrgreen:

Unfortunately, while these will work fine for .als files, as far as I can tell none of these versioning systems can deal with big audio files and will put them into the repository again and again. For that I turned to the commercial PlasticSCM but unfortunately haven't found the time to fully integrate it. Personal licenses are free.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 12:44 pm
by Angstrom
Yeah I use SourceTree for git. I'm not really a Github user other than for complaining on other peoples projects!
I use it on private Git repositories on my servers. If you are familiar with Plesk (server manager) it has Git support built in. Very handy when managing a bunch of client sites/ web apps.

While the als/xls format makes ableton git versioning seem reachable I agree that the giant media binaries are probably the death of it.
I'm thinking this Ableton git versioning idea looks like a classic case of the 90/90 rule. "the final 10% takes the remaining 90% of the time" .

I think I will sit on my hands here. Hopefully L10 introduces versioning in some areas, packs would be a good start ... but I will dream about a native project / set versioning implementation.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 1:29 pm
by Matt_Quinn
That was pretty much the idea behind Splice.

https://techcrunch.com/2013/10/09/splice-music/


I have no idea how close they came to what you're envisioning (I don't use either), just remembered this article when you mentioned GitHub.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 1:58 pm
by Angstrom
Matt_Quinn wrote:That was pretty much the idea behind Splice.

https://techcrunch.com/2013/10/09/splice-music/


I have no idea how close they came to what you're envisioning (I don't use either), just remembered this article when you mentioned GitHub.
If I had a memory I'd be dangerous!
Yeah, I'd forgotten all about splice. I signed up in 2013 and then forgot all about it.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Sun Sep 03, 2017 3:53 pm
by Stromkraft
Matt_Quinn wrote:That was pretty much the idea behind Splice.

https://techcrunch.com/2013/10/09/splice-music/


I have no idea how close they came to what you're envisioning (I don't use either), just remembered this article when you mentioned GitHub.
While Splice is great for sharing work with collaborators and getting plug-ins and samples (I assume) and it does have some kind of versioning, it doesn't really count as it's a free service and you cannot be surprised if all your data will be gone (á la Gobbler) one rainy day. Also it's a all or nothing affair and it's very fiddly getting single things as moving back removes your current version unless that is back-upped first and then you have to move back to that again and…

Versioning should happen on your own machine or server that you or your service provider backs up religiously*.

*Belief in Murphy's law.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Mon Sep 04, 2017 10:28 am
by jonnyboy10
I use git a lot for development and tried this quite a while back with ALS files.
It worked really well, and is so damn handy.
I avoided adding any audio files to the repo as that would kill my hosting.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Wed Sep 06, 2017 7:21 am
by stoersignal
jonnyboy10 wrote:I use git a lot for development and tried this quite a while back with ALS files.
It worked really well, and is so damn handy.
I avoided adding any audio files to the repo as that would kill my hosting.
could you explain how you are doing this?
i have git installed on my mac, but only for downloading other people projects. so beside that i have no clue on how to use it....

thx in advance

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Wed Sep 06, 2017 5:47 pm
by kebabdylan
I was thinking about this as well but git makes copies of entire files that change not diffs so repos would get yuge after a short while...

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Wed Sep 06, 2017 7:20 pm
by Stromkraft
kebabdylan wrote:I was thinking about this as well but git makes copies of entire files that change not diffs so repos would get yuge after a short while...
Why do you think .als files will add up to something extremely huge? The largest ones I have are about 2MB. Surely GIT does some have packing and pruning commands? I'm sure the files are Gzip compressed in the repository.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Wed Sep 06, 2017 7:31 pm
by Angstrom
Somehow mine tend towards 5mb, but at the moment my "versioning system" / project folder tends to look like this

my_new_song-001.als
my_new_song-002.als
my_new_song-003.als
my_new_song-004.als
my_new_song-004_fartymix-001.als
my_new_song-004_fartymix-002.als
my_new_song-004_dubmix-001.als
my_new_song-004_dubmix-002.als
my_new_song-004_dubmix-003.als
my_new_song-005.als
my_new_song-005_dubmix-001.als

It's ... not great, but think of the "mixes" as branches that need merging back into the trunk and it makes more sense.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Thu Sep 07, 2017 2:36 am
by fishmonkey
i think Github's repo limit is 1GB. i mostly use Bitbucket, which allows 2GB per repo...

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Thu Sep 07, 2017 10:08 am
by Angstrom
I can see that could become a problem although alternatively a VPS with git on isn't much more expensive. That's what I do for work, as it makes more sense for me.

Re: Has anyone tried Git style versioning with .ALS files?

Posted: Thu Sep 07, 2017 4:51 pm
by jonnyboy10
stoersignal wrote:
jonnyboy10 wrote:I use git a lot for development and tried this quite a while back with ALS files.
It worked really well, and is so damn handy.
I avoided adding any audio files to the repo as that would kill my hosting.
could you explain how you are doing this?
i have git installed on my mac, but only for downloading other people projects. so beside that i have no clue on how to use it....

thx in advance
You just need to create a new Repo in your Ableton project folder.
Here's a tutorial: http://kbroman.org/github_tutorial/pages/init.html
Scroll down to "A new repo from an existing project"