I want to start using RSpec in an existing project that uses git for
SCM, and I was planning on using git submodules to pull in known-stable
releases of the rspec and rspec_on_rails plugins. The current
repositories on github don't seem to be set up to help with this at the
moment though, so I'm looking for some advice. Here're the issues, I
think:
* The last stable release is 1.1.3, but there's no tag in the git
repository to indicate the revision that makes that release. I
think the equivalent commit is
11d7cc9d9a45c957f7a9215b41aa0b9c3d5c236b but...
* The rspec.git repository for the last stable revision actually
includes rspec (and rspec_on_rails) as subdirectories, so if you
check them out as submodules in vendor/plugins the plugins
themselves aren't in the right place (they finish up in
vendor/plugins/rspec/rspec
and vendor/plugins/rspec/rspec_on_rails).
I can see that both of these issues will disappear when the first real
release from git happens, but in the meantime I feel a bit stuck. Is
there a specific revision of rspec.git (and rspec_on_rails.git) that is
actually pretty stable, or is master pretty stable and I could just pick
any revision and find it works fine?
Cheers,
-Mark.
on 09.05.2008 13:45
on 09.05.2008 14:39
On May 9, 2008, at 6:43 AM, Mark H. Wilkinson wrote: > think the equivalent commit is > release from git happens, but in the meantime I feel a bit stuck. Is > there a specific revision of rspec.git (and rspec_on_rails.git) that > is > actually pretty stable, or is master pretty stable and I could just > pick > any revision and find it works fine? Unfortunately you *are* stuck for the moment. We broke up the repositories as we did because git doesn't support partial clones (i.e. you can't just clone one subdirectory of a repo) the way you can checkout subdirectories of a subversion repository. There's no way for us to go back and tag the correct commit without you grabbing the full repository at that time. I can tell you that I use the current master with no issues, BUT, there have been some changes to internals that might break your monkey patches (if you have any). I don't have time to doc them right now (part of why there has been no release), but if I were in your shoes I'd grab the latest and see what happens. It's an inexpensive experiment. David
on 10.05.2008 13:26
On May 9, 2008, at 8:38 AM, David Chelimsky wrote: >> * The last stable release is 1.1.3, but there's no tag in the git >> > repositories as we did because git doesn't support partial clones > inexpensive experiment. > > David David, Didn't you do git-svn import? Shouldn't the full repository history be there? I would imagine that you could create a branch for the last stable release, and revert backwards to the revision (in svn) in which the last release was tagged. As for (git) tags - I see no way to use submodules with tags - Or am I missing something very obvious? Scott
on 10.05.2008 14:55
On May 10, 2008, at 6:25 AM, Scott Taylor wrote: >>> think: >>> and vendor/plugins/rspec/rspec_on_rails). >> Unfortunately you *are* stuck for the moment. We broke up the >> your shoes I'd grab the latest and see what happens. It's an > in which the last release was tagged. We can do that, but at that revision you get the whole repo - so it would be up to you to then copy the different subdirectories to the right places.