views:

377

answers:

11

I'm searching for creative -- or at least non-standard -- uses for Version Control. I have a specific purpose in mind, but I don't want to stifle your creative thoughts with any sort of limitations.

To that end, don't eliminate a creative use of VCS dealing with source code just because I said creative/non-standard: That doesn't mean it can't deal with source. It just means I'm looking for ideas other than branching, merging, tagging, rollback, and forking.

For example: I would consider the use of Version Control as a quick & dirty SharePoint knock-off as a passable answer, but just barely.

What other interesting uses have you seen?

+2  A: 

Well I've seen it used as an alternative for an FTP Warez Share in one place I worked.

Developer: "Hi, can you open port 22 for FTP"
SysAdmin: "Nope Company policy"
Developer: "Ok Fair enough"

Several days later I saw a couple of episodes of Family guy + some other random stuff appear in the SVN Repo under a folder called "File Drop" in the form of several split .rar files

Uncannily they were checked in not by a named user but by the sys account we used for downloading the repo during builds... that account was subsequently locked to ReadOnly

Eoin Campbell
Inappropriate at work, but creative!
Adam Tuttle
+4  A: 

I have used SVN for managing my photos. It is much better than having a bunch of 'saved as' copies. Plus my technically inclined family members can get the latest pictures from the TRUNK branch...works out quite well.

northpole
I can see that being useful if you're putting together different photo albums - tag instead of copy. Interesting. Thanks for the idea. :)
Adam Tuttle
I have been thinking about the same thing. Care about sharing some details on the setup?
Fredrik Mörk
northpole
+3  A: 

A personal diary, or for writers/novelists.

Adam Robinson
+3  A: 

See the Using Git For What It Is Not Intended [sic] contest.

Brian Campbell
+1  A: 

I could imagine to use it for all of my file system. I think it is also very useful for word documents, E-Mail data bases from the favorite mail program, images (as mentioned above), desktop symbols. You could benefit in many ways!

rstevens
+1  A: 

Checking in your toolchain can make provisioning developers boxes a metter of one simple install and a pull.

ojblass
A: 

I use SVN for hosting photos.

But not albums, just pictures I post to forums, send via IM, etc.

In this way I may always fix a picture later, from color adjustments to replacing with 10 000 x 10 000 blinking GIF to blow the mentioned forum apart (never done this, but...)

IMil
+1  A: 

Flashbake Offers source controll for ordinary people, Boing boing have advertised it as being useful for writers.

Omar Kooheji
A: 

It's a little bit tricky at times (because of root access), but I've used svn for hosting my machine setup.

/etc/X11/xorg.conf
/etc/apt/sources.list
/home/me/.*
etc.
Scott Kirkwood
+1  A: 

I remember reading about some guy who used it to keep his virtual machines synced between home and office. So check in when leaving the office and check out when get home.

Conrad
I suppose that kind of makes sense, but the VM disk images would be huge -- it would take a long time to transmit all that data.
Adam Tuttle
+2  A: 

I've used version control (darcs) for a local wiki on the filesystem. Because darcs repos are fetched over http, making my local repository available from my web server meant anyone could grab a copy of my wiki, and make their own changes.

To get new changes, I would fetch from their repository.

One benefit of this is that there's no spam, because you can just rollback changes and stop fetching from anyone who entered spam.

I kept a script to fetch from remote repositories in the repository itself, so there's no central server to roll over and die, and it's easy to find other wikizens when you're grabbing a new wiki.

The wiki system I wrote never saw much use, but gitit is an active project with the same idea (darcs or git), and more features.

I also use version control for many of the files in my home directory: .zshrc .emacs and many more.

shapr