Slashdot Mirror


Home Directory In CVS

shamir_k writes "Joey Hess has come up with an innovative solution to a problem we have all faced. He's put his whole home directory in CVS. Not only can he move between multiple computers easily, he also has automatic distributed backups."

16 of 414 comments (clear)

  1. CVS, eh? by Kourino · · Score: 4, Informative

    I wonder why CVS, and not something more advanced, like Arch or Subversion? Especially since he outright complains about common limitations in CVS, like moving files and dealing with directories at all. If he's hoping, as he says, "for a better replacement some day", why not see what the present has to offer?

    I mean, that's not to say that alternative systems are perfect, either. I'm going through the process of learning arch now. There's a learning curve, but not nearly as big as it's made out to be. Still, using something else (almost anything else) would probably help on things like the merging issues, especially since he mentions that sometimes it's a pain keeping things in sync between three of his machines.

    1. Re:CVS, eh? by self+assembled+struc · · Score: 4, Informative

      well,

      have you every tried to install and set up subversion?

      plus, after years and years of development, it's still point-oh-something and specifically states they can only guarentee that your repository can be read with x number of versions after the version that created it.

      as for arch, i've been looking into it, but it's still a hack onto cvs.

      subversion gets some of it right, but at my old company we used perforce and honestly, i'm spoiled and i've been trying to find a free (just as in beer, free as in speech would be nice, but i just want to get my work done quickly and without hassle) source control client that can mimic the functionality and stability of perforce, and i've yet to find one.

      too bad my new place won't shell out the $650/seat for the license...

    2. Re:CVS, eh? by vslashg · · Score: 5, Informative

      I agree that Perforce is awesome. But here's something you may not know -- Perforce is completely free for the kind of thing this article is talking about doing.

      Specifically, Perforce is available for download here. Without a license, it only supports two users and two clientspecs... not enough to manage a project shared among developers, but wonderful for managing your code in home projects. More good news: Perforce is free-as-in-beer for use in developing open source projects.

      (This isn't meant as a holy war... I know that many of you might think that source control package Foo is better than Perforce. You may be right. I'm just pointing out some Perforce licensing facts for those who like Perforce.)

    3. Re:CVS, eh? by aardvarkjoe · · Score: 4, Informative

      have you every tried to install and set up subversion?

      Subversion is pretty easy to install and set up as long as you don't use the Apache interface. It's pretty much just a matter of downloading the subversion and libdb archives, and doing "./configure; make; make install". I've never had any problems with it, and it is rapidly approaching version 1.0.

      One of the main things that they ought to make clear is that the http interface is a nightmare to set up -- with the exception of making publically-accessible repositories, using the svnserve method over ssh is a far better choice.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
  2. Re:I wonder..... by Kourino · · Score: 4, Informative

    You wouldn't do this in Bitkeeper if you were a privacy freak. Remember, the Bitkeeper liscense requires that you maintain open logging. Realistically, this means that info about what files you change get transmitted across the network; I don't know if it's encrypted or not. It's not that big of a deal, but I'm sure someone here would care.

    That being said, doing it in BK would be a compelling alternative if you wanted to use the same /home repo across (say) three or more machines, since you could take advantage of its more complex merge operators. Arch or SVN also might be good ideas. (Don't have any experience with Subversion, though.)

  3. Re:Why just home? by PhilipPeake · · Score: 4, Informative
    Ever hear of VMS ?

    It had a filestore with file versioning - about 30 years ago.

  4. Re:Why just home? by Jellybob · · Score: 5, Informative

    I'll get modded down to oblivion for mentioning an MS product in a positive light, but Windows XP+2003 Server supports this already.

    Users can rollback to previous revisions of files that they've saved to the 2k3 server, saving the sysadmins the time of restoring *another* accidently deleted file from the backup tapes.

  5. Re:Why just home? by AuMatar · · Score: 4, Informative

    To make this more legible- a text editor, for example, does not have the file open the entire time waiting for input. It opens the file, reads it, then closes it at startup. When the user hits save (through keyboard commands, mouse click, whatever), the editor opens the file again, this time in write mode, writes the data, and closes it. By this model, close could be the commit function, and open could be the checkout function.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  6. Re:Why just home? by bug-eyed+monster · · Score: 3, Informative

    It's been quite a while since I used VMS... IIRC the problems we had we the VMS versioning:

    - It created a new version every time you saved, so just going through a few change/compile/fix cycles (for example) would create lots of versions clogging up the disk.

    - The old versions were in the same place as the latest version, and if you wanted to delete a file, you'd just say "delete blah.blah.*" to wipe out all versions (and therefore all traces of the file)... then say "oops!"

    It was useful in many cases, but in a different way from CVS. A very useful solution would be to have file-level journaling with the ability to throw in comments and create tags and branches.

  7. Re:Or just RCS by pHDNgell · · Score: 5, Informative

    I have a script that does all of this for me:

    http://bleu.west.spy.net/~dustin/soft/filemonitor

    You point it at a dir and run it from cron nightly. It also gives you a handy nightly mail telling you what changed. Excellent for those late night changes to systems where you don't remember what you did...or if someone else made some late night changes that you'd like to undo.

    --
    -- The world is watching America, and America is watching TV.
  8. Re:ssh private keys by dedave · · Score: 4, Informative

    This isn't insightful. He specifically states in the article that he has a .hide directory that _doesn't_ get "sown like seeds across a number of systems" just for this very reason. Bah.

  9. kinda old article; update by joey · · Score: 5, Informative

    I'm not sure why something that I wrote in 2001 and that appeared in print media in 2002 is news.
    This is the second time I've been slashdotted for something over 1 year old this year. Previously it was the pkg-comp page, which I wrote circa 1998.
    Kinda makes you wonder.

    Anyway..

    I suppose I should mention that these days I keep most of my home directory in subversion. I have not gotten around to writing a successor to this article yet, but it works even better than cvs, and that's probably the most common question people ask me about this article these days.

    --
    see shy jo
  10. Re:My favorite directory to put in CVS by Espectr0 · · Score: 4, Informative

    /etc

    Or you can just use Gentoo, which does this automatically when you update your system, pointing out the location and files that are different, all with diff output, and the ability to merge the changes, overwrite or ignore the change.

  11. The comments say he uses subversion now by Polo · · Score: 5, Informative
    Did you see his followup reply at the bottom??
    Re: CVS homedir (Score: 0)
    by Anonymous on Tuesday, November 11, 2003

    I suppose I should mention that these days I keep most of my home directory in subversion. I have not gotten around to writing a successor to this article yet, but it works even better than cvs, and that's probably the most common question people ask me about this article these days.

    -- Joey Hess
  12. Old news by whereiswaldo · · Score: 5, Informative


    This was featured in a Linux Journal article from September 2002:

    http://linuxjournal.com/article.php?sid=5976

    Same guy, too.

  13. Re:My favorite directory to put in CVS by inferno0069 · · Score: 5, Informative

    Where do you think Gentoo got this from?

    Debian.