Skip to content

gensym/git-me-up

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README
======

git-me-up was written to automate the creation of a local git repo for a Rails
app that is hosted in Subversion. It should work equally well for non Rails
projects.

In a nutshell, this is what it does:

  - Clones the latest version of the source (by default skipping the history
    for performance reasons) into a new local Git repository.

  - Recreates empty directories (that git chooses to ignore), but that your
    app might need.

  - Converts any svn:ignore Subversion properties into entries in your
    .git/info/exclude file.

  - Checks for Rails plugins installed via svn:externals and clones them into
    their own git repositories (located in a new directory called ./plugins,
    relative to your working directory). Each external plugin is symlinked
    into vendor/plugins. Git is then instructed to ignore them so that it
    doesn't attempt to commit the symlink back into Subversion.

  - Creates a local working branch (called "work" by default; override it by
    setting the BRANCH environement variable).

All this happens in a manner that avoids adding Git metadata (such as
.gitignore files) to your subversion repository.

INSTALL
=======

To install git-me-up into /usr/local/bin, run:

    $ sudo make install

You will need to install git-svn before you can use git-me-up.

USAGE
=====

You need to specify two arguments; the Subversion repo that you will be
checking back into, and the path (relative to your current directory) of the
Git repository that you'd like to create.

For example:

    $ git-me-up http://svn.mydomain.com/repo/project/trunk project

By default git-me-up will pull the latest version of your code from
Subversion, ignoring all the history. If you want to override the revision
pulled, set the REVISION environment variable, like this:

    $ REVISION=123:HEAD http://svn.mydomain.com/repo/project/trunk project

See the coverage of the -r option in the git-svn(1) man page for more examples
of how to specify the revision.

Give it a whirl. If you don't like it, delete your local directory. No harm
done...

About

Automate common steps when getting setup with git-svn.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published