Evan Martin (evan) wrote in evan_tech,
Evan Martin

git backups

Since git lets you rewrite history, it seems to me it may be possible for someone with commit access to your repository to irreparably remove files. (Again, it's tracking content, not representing history.) Here's a way to make backups easy.
  1. Create a location for your backup repo: ssh safehost; mkdir backupdir; cd backupdir; git init
  2. Back on your own machine, add a section to .git/config that sets up an alias for pushing:
    [remote "backup"]
            url = safehost:backupdir
            push = +refs/heads/*:refs/heads/*
    The last line says that any branches on your local machine become branches on the remote machine.
  3. Now you have a "backup" alias, so any time you want to snapshot your branches, just run git push backup .
Tags: git, howto

  • your vcs sucks

    I've been hacking on some Haskell stuff lately that's all managed in darcs and it's reminded me of an observation I made over two years ago now (see…

  • using git grafts to restore svn merge history

    Here's a quick tutorial on using git grafts to fill in implied svn merge history. Say you're using git-svn to track a project, which has a trunk…

  • topgit

    TopGit - A different patch queue manager: this looks like exactly what I've been wishing for! You can express interdependencies between branches,…

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.