# Slightly Off Topic: Rails/SVN/Capistrano...plus Git?

**URL:** <https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155>\
**Category:** Rails\
**Created:** [January 7, 2009, 11:09pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155 "2009-01-07T23:09:49Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 7, 2009, 11:09pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/1 "2009-01-07T23:09:49Z")

</div>

Hi,  
I’ve been using SVN and Capistrano with rails for a long time now. I’m  
pretty happy with the setup, and svn works well with capistrano without  
the additional calisthenics that git’s non-centralized server approach  
brings to the table.

I also like having my svn server always up to date and running on the  
linux box 24/7 so I can get at my stuff from anywhere and make changes  
etc.

The one area I have found it lacking, and admittedly it is probably  
because I’m a very novice user of svn is when it comes to making  
branches or some other means of selectively deploying some of what I’m  
working on without deploying everything. For instance if I have some  
stuff deployed to the staging server and the Boss has finally tried it  
out and said to send it up to the live server…but meanwhile I’ve  
started something else, some of which is checked in…you know the  
drill.

It seems one of the things git users like the most about it is that it  
is very easy to make branches for things and merge them back in as  
needed. I’m wondering if anyone has started using svn and git together  
such that things on the local machine get “gitted” on a regular basis,  
each on their own branches, and then whenever you need to deploy  
something to one server or the other, you “git your stuff together” and  
then commit that to svn and cap it to the server.

In other words, git locally, and svn for global and deployment file  
management? Does this work, or do they fight with each other?

thanks,  
jp

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 7, 2009, 11:35pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/2 "2009-01-07T23:35:39Z")

</div>

Jeff P. wrote:

> The one area I have found it lacking, and admittedly it is probably  
> needed. I’m wondering if anyone has started using svn and git together

Just make a branch of what you have submitted to the boss. You will  
then use that for production when he blesses it. In the mean time you  
can continue development on the trunk without changing what is on the  
branch. If you have to correct errors on the branch you can merge the  
branch in with the trunk or just maintain them seperatly depending on  
what your configuration management plan (You have one of those don’t  
you/) calls for.

Norm

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 7, 2009, 11:41pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/3 "2009-01-07T23:41:31Z")

</div>

I found “Version Control with Subversion” by Ben Collins-Sussman, Brian  
W. Fitzpatrick and C. Michael Pilato very good at answering that kind  
of question. I do not remember where I downloaded it from but you  
should be able to find it without too much trouble.

Norm

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 8, 2009, 10:34am UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/4 "2009-01-08T10:34:45Z")

</div>

git-svn might be worth a look. But to be honest, I find it a  
headache to keep things in sync between two version control systems  
when different people update each system.

On Jan 8, 3:09 am, Jeff P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 8, 2009, 5:33pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/5 "2009-01-08T17:33:53Z")

</div>

For a sole developer setup where you don’t have legacy repos hanging  
around, I would really recommend git. I have been using it exclusively  
for the past year and really like the Git + GitHub combination.

On Jan 8, 10:10 am, Jeff P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 8, 2009, 5:42pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/6 "2009-01-08T17:42:42Z")

</div>

As you can see most of the projects (rails, plugins, etc) have moved  
from  
SVN to GIT recently, so using GIT during start itself would be helpful  
to  
you

NAYAK

---

<div class="post-metadata">

**Author:** ![jeffpritchard](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/43a26b/32.png) [@jeffpritchard](https://www.ruby-forum.com/u/jeffpritchard)\
**Post date:** [January 8, 2009, 5:10pm UTC](https://www.ruby-forum.com/t/slightly-off-topic-rails-svn-capistrano-plus-git/157155/7 "2009-01-08T17:10:27Z")

</div>

Mukund wrote:

> git-svn might be worth a look. But to be honest, I find it a  
> headache to keep things in sync between two version control systems  
> when different people update each system.
> 
> On Jan 8, 3:09ï¿½am, Jeff P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

I guess that was a critical piece of info I left out. This is for  
projects where I’m the sole developer.

thanks,  
jp
