Has anyone tried Git style versioning with .ALS files?

Discussion of music production, audio, equipment and any related topics, either with or without Ableton Live
Post Reply
Angstrom
Posts: 14662
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

Has anyone tried Git style versioning with .ALS files?

Post by Angstrom » Sun Sep 03, 2017 12:57 am

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!

ecuk
Posts: 24
Joined: Fri Jun 03, 2016 7:49 pm

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

Post by ecuk » Sun Sep 03, 2017 3:43 am

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.
MacBook Pro, macOS Mojave 10.14.6, 2.7GHz i7, 16GB – Live Suite 10.1, Max 8.0.8, Push 2, ATH-M50x

Stromkraft
Posts: 7033
Joined: Wed Jun 25, 2014 11:34 am

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

Post by Stromkraft » Sun Sep 03, 2017 11:23 am

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.
Last edited by Stromkraft on Mon Sep 04, 2017 12:19 pm, edited 1 time in total.
Make some music!

Angstrom
Posts: 14662
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

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

Post by Angstrom » Sun Sep 03, 2017 12:44 pm

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.

Matt_Quinn
Posts: 511
Joined: Fri Nov 27, 2009 2:47 pm

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

Post by Matt_Quinn » Sun Sep 03, 2017 1:29 pm

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.
the_planet wrote:Trap music is not supported in the current version.

Angstrom
Posts: 14662
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

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

Post by Angstrom » Sun Sep 03, 2017 1:58 pm

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.

Stromkraft
Posts: 7033
Joined: Wed Jun 25, 2014 11:34 am

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

Post by Stromkraft » Sun Sep 03, 2017 3:53 pm

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.
Make some music!

jonnyboy10
Posts: 14
Joined: Fri Apr 15, 2011 11:36 am

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

Post by jonnyboy10 » Mon Sep 04, 2017 10:28 am

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.
Need selected track control, or red box functionality?
Build more powerful MIDI mappings for your keyboard/controller with Remotify
https://remotify.io

Image

stoersignal
Posts: 496
Joined: Fri Oct 22, 2010 9:43 pm
Location: vienna

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

Post by stoersignal » Wed Sep 06, 2017 7:21 am

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

kebabdylan
Posts: 3
Joined: Wed Sep 06, 2017 5:46 pm

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

Post by kebabdylan » Wed Sep 06, 2017 5:47 pm

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...

Stromkraft
Posts: 7033
Joined: Wed Jun 25, 2014 11:34 am

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

Post by Stromkraft » Wed Sep 06, 2017 7:20 pm

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.
Make some music!

Angstrom
Posts: 14662
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

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

Post by Angstrom » Wed Sep 06, 2017 7:31 pm

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.

fishmonkey
Posts: 4096
Joined: Wed Oct 24, 2007 4:50 am

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

Post by fishmonkey » Thu Sep 07, 2017 2:36 am

i think Github's repo limit is 1GB. i mostly use Bitbucket, which allows 2GB per repo...
badbrainz wrote: I'm a drummer, so I'm already at an intellectual disadvantage here

Angstrom
Posts: 14662
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

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

Post by Angstrom » Thu Sep 07, 2017 10:08 am

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.

jonnyboy10
Posts: 14
Joined: Fri Apr 15, 2011 11:36 am

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

Post by jonnyboy10 » Thu Sep 07, 2017 4:51 pm

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"
Need selected track control, or red box functionality?
Build more powerful MIDI mappings for your keyboard/controller with Remotify
https://remotify.io

Image

Post Reply