i finally took the plunge and started using git to manage my code. since we use subversion at work, i’m using git-svn to collaborate with them.
initially, i just followed the simple starting instructions, which don’t use the –prefix option to
git svn init.
it wasn’t long before i saw someone’s suggestion to add a svn prefix to the remote branch names.. as a way of segregating the namespace, and to easily allow me to have local branches that have the same name.
i searched around, but there weren’t any explicit instructions on how to add the prefix post-init. well, you can. here’s how.
in your .git/config, there will be a block for the SVN configuration:
[svn-remote "svn"] url = http://example.com/your/repo/root fetch = trunk:refs/remotes/svn/trunk branches = branches/*:refs/remotes/svn/* tags = tags/*:refs/remotes/svn/tags/*
what you will want to do is edit this file and add the /svn entries that i have in bold.
git svn fetch. this will populate the new branches. thanks to the metadata git-svn keeps, its aware that there are already local commits that correspond to specific SVN revisions.
finally, you can delete all of the old branches using something like
git branch -d -r | grep -v svn | xargs -n 1 git branch -d -r
then sit back and bask in your new prefixed life
We have been using the wonderful flex mojos to build some of our actionscript code.
i needed to publish a jar containing the asdocs, but alas, the asdoc plugin doesn’t contain an equivalent to the javadoc:jar goal from the javadoc plugin.
needing something immediately, GMaven to the rescue!
the below profile will generate an attached jar when running
mvn -P release
so, you have your continuous integration system up and running. you’re using Bamboo from Atlassian since they rock. however, you have a need to run some tests that require an X server to be running (like flexunit tests).
however, you don’t really need a plugin! if you’re using maven 2.0, drop these three lines into ~/.mavenrc:
vncserver -kill :0 vncserver :0 export DISPLAY=:0
(be sure to run vncserver once as the user Bamboo runs as to set a password first).
then, when maven is launched, it will destroy the existing X session, start a new one, and set the display property properly. should anything go awry, you can always connect a VNC client to see the screen prior to the next build starting.
while it’d be nice to have it more automagic like what Hudson has, its easy enough to string a solution up