ActiveBlog

Where's Git!?
by Troy Topnik

Troy Topnik, May 20, 2009

We've been getting a lot of people asking when we're going to support
Git in Workspace. It's a fair question,
but the best answer I can give at the moment is "As soon as we possibly
can." Workspace is based on Trac, and
getting Git to integrate well with Trac and all of the plug-ins available on
Workspace is quite a challenge.

In the meantime, you can use Git locally with a centralized
SVN repository by way of git-svn.
This tool, which comes with most distributions of Git, allows you to make a
local clone of an SVN repository, work with the local repository just like you
would any other Git clone, then sync your changes back to the SVN repository -
with your local Git commit history preserved as individual SVN commits. It's
obvious the Git developers wanted to make it easy for people to migrate from SVN
to Git, and they've succeeded.

I've written up some instructions
for using git-svn with Workspace
, but this only covers the most basic of
operations. Git is pretty new to me, so rather than regurgitate the tutorials of
others, here they are:

... and of course, there's always the git-svn man
page
which includes a few useful examples.

If you're one of the folks waiting for Mercurial support in
Workspace, some third party
tools
are available that allow you to do the same kind of thing.

I've been trying this out a bit with Komodo IDE's source code control
integration, and all the Git operations work as expected. Adding a few saved
"run commands" to handle the git-svn side would make things pretty much
seamless. More on that when I've gotten into this a bit more, right now I'm
still at the "Wow! This is so cool!" stage.

We've been getting a lot of people asking when we're going to support Git in Workspace (Edit: now called Firefly). It's a fair question, but the best answer I can give at the moment is "As soon as we possibly can." Workspace is based on Trac, and getting Git to integrate well with Trac and all of the plug-ins available on Workspace is quite a challenge.

In the meantime, you can use Git locally with a centralized SVN repository by way of git-svn. This tool, which comes with most distributions of Git, allows you to make a local clone of an SVN repository, work with the local repository just like you would any other Git clone, then sync your changes back to the SVN repository -
with your local Git commit history preserved as individual SVN commits. It's obvious the Git developers wanted to make it easy for people to migrate from SVN to Git, and they've succeeded.

I've written up some instructions for using git-svn with Workspace, but this only covers the most basic of operations. Git is pretty new to me, so rather than regurgitate the tutorials of others, here they are:

... and of course, there's always the git-svn man page which includes a few useful examples.

If you're one of the folks waiting for Mercurial support in Workspace, some third party tools are available that allow you to do the same kind of thing.

I've been trying this out a bit with Komodo IDE's source code control integration, and all the Git operations work as expected. Adding a few saved "run commands" to handle the git-svn side would make things pretty much seamless. More on that when I've gotten into this a bit more, right now I'm still at the "Wow! This is so cool!" stage.

Subscribe to ActiveState Blogs by Email

Share this post:

About the Author: RSS

Troy Topnik is ActiveState's technical writer. After joining ActiveState in 2001 as a "Customer Relationship Representative" (AKA Tech Support), Troy went on to lead the PureMessage Enterprise Support team before moving on to a technical writing role in 2004. His talent for describing software for new users stems from his difficulty understanding things that developers find obvious. He has a Bachelor of Music from the University of Victoria.