Best Integrated Issue-Tracker For Subversion?
JobSeeker writes "Now that subversion has merge tracking my boss wants to save money by dropping our expensive commercial solution. I've pretty much convinced myself that subversion can do the job. I like it. But what about integrated issue tracking? Version control without issue tracking is only half a solution. The TortoiseSVN docs say a little about bugzilla and not much else. What ready-to-play options (commercial or open source) exist for deploying subversion on commercial projects?"
trac + subversion works well.
The best issue tracker we've seen for Subversion, by far, is Trac. We're not crazy that it's written in Python (not that anything is wrong with Python - it's just proven difficult for us to hire people with language familiarity beyond PHP). However, the integration between Subversion and Trac appears to be very good.
I use Trac. I also use it for the wiki functionality, and Milestone features. Good piece of software, if it's what you're looking for.
Pity the Auth wasn't cleaner.
Probably the most user friendly one I've found (assuming you are working in the windows enviroment and sshing into a linux box). It's very similar to TortoiseCVS, if you have ever tried that. TortoiseSVN integrates right into explorer as well for ease of use. Link to their site: tortoisesvn.tigris.org
are two different things. You can't expect finding much about issue tracking in a version control tool's documentation.
So what about:
* Bugzilla
* Trac
* Mantis
* Roundup
* RT
* ???
* Oh, never mind
Colorless green Cthulhu waits dreaming furiously.
Have never used it but JIRA is an excellent issue tracker, and their integration with FishEye (Code repository browser) looks pretty snazzy. Not sure if it would fit your specific needs.
http://www.atlassian.com/beyond/link_to_source.jsp
We've been using Trac for a long time and it worked well.
We since discovered Redmine which does about the same job, is themed prettier and seems to be a bit easier to use. All in all Trac and Redmine both do about the same things.
Redmine has a built-in user management, which I'm taking advantage of in our SVN/Hg web server to authenticate users with (single sign on)
Redmine also has support for multiple projects in one tracker, whereas trac needs multiple installs for multiple disjointed projects. The workflow manager in Redmine is also really easy to use; no dicking about writing python scripts to control your workflow.
Redmine talks to Svn, Git, Mercurial, Bazzar and a couple of other source control tools, which is useful if you ever need to move on to those tools. Trac is pretty rooted on subversion, though it does have a Git plugin.
Both are pretty easy to install, but I had Redmine up and running in about 4 minutes whereas it took a bit of messing about to get Trac running.
Redmine also has the manager friendly theme (think that horrible facebook style) so managers will goo and gaa over it then sign off that it be implemented.
I drink to make other people interesting!
Off the top of my head, you've got Trac, CVSTrac, Redmine, Collaboa... Trac is pretty well established. CVSTrac (AKA SvnTrac when dealing with Subversion) is lean and mean and absurbdly quick to set up. Redmine is pretty new, but seems to have picked up a lot of good ideas. Collaboa looks nice, but development appears to have stagnated.
There's plenty of others, though. Commercially, things like FogBugz also have Subversion integration. But it's not exactly hard to find all this out: http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems
Be aware that once you lock yourself into a combination of SCM and issue tracking system, migrating to another SCM is absolutely hellish. Hope you really, really like Subversion.
[disclosure: I mostly maintain CVSTrac]
c.
Log in or piss off.
http://www.atlassian.com/software/jira/
Oh, I guess I missread, thanks for letting me know. In that case, I'd reccomend Mantis. You can directly integrate it into SVN if you want. Here's the tutorial I used to integrate them together
Mercurial does "merge tracking," though its not listed as that, it is just inherently part of the system.
Well, to be fair, so does SVN now (finally!). I don't know how well it works.
I would second this poster though; if you haven't tried one of the distributed VCSs like Git or Mercurial (there are others, but these are the two that have looked most promising to me), you should. That said, it's not completely a given that you'll end up liking it more than SVN.
Would be nice if you could have stayed on topic.
"Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
I personally really like Unfuddle as a commercial hosted solution and Redmine if you either want full control. Both work well, and both support git (Redmine does others) giving you a future upgrade path without having to throw everything away.
Damien
trac is not the best solution. Trac is a one-install per product gig.. not something that'll allow you to version and actually track issues across multiple products and multiple environments and multiple subversion repositories... all at once.
Also, the wiki isn't that good.. tons of other great options that are actually good to wiki on.
Jira has a great subversion connector... Jira has its quirks that I hate.... and I'd choose bugzilla if it weren't for a job.. but, honestly, the few thousand dollars jira is.. completely worth it.
Comment removed based on user account deletion
Comment removed based on user account deletion
I like bzr -- I honestly couldn't choose between hg and bzr, so I eventually picked it for non-technical reasons (bzr is used by Canonical).
However, if you do go with a distributed system, you may want to take a look at Ditz -- it's an issue tracker which uses flat textfiles as a datastore, with the intent that you'll just check those into whatever version control you're using. That means the opening or closing of an issue is directly tied to a commit.
Which means it will work well with any SCM, but is especially well-suited for a distributed one -- better, I think, than trying to wedge those things into something like Trac.
Don't thank God, thank a doctor!
I'm committed to CVS(NT) (mayhaps a bad choice) with TortoiseCVS as the client. If anyone can suggest an issue/defect/bug tacking solution that plays nicely with CVS, that would be great! We tried installing Mantis, but it was a bit too complex for our needs, people rarely used it.
Ideally, it could support multiple variants of the same project (same branch, but different inputs), and different levels of interaction (client, internal, etc.) But it has to be usable by non-technical staff.
Your ad here. Ask me how!
In all seriousness though, I've ditched svn for a DVCS (git) and I'll never go back. I used svn for maybe forty projects and loved every second of it until I used git for the first time (ok, it took a lot of reading to convince myself git was worth the time investment required to grok another VCS).
Branching in git is so unbelievably natural. I've got my bash set to add (working) to the end of my prompt if I'm in a git repo and I'm on the "working" branch, for instance.
I will say, the designers on my team dislike git significantly. Their lives were almost entirely covered with "svn co/ci" and the idea of having to keep a remote tracking branch, merge a work branch with it, push the changes to the master repo...this just irritates them. But once we find a good way to appease them, it will have been so unbelievably worthwhile.
Anyway, I do believe ease of forking/branching/merging to be the killer feature of a VCS and I think git has got it completely right. I've never tried mercurial (hg) but I've heard great things about it as well...but I have zero dissatisfaction with git, and a project I'm working on has even adopted the short-hash conventions git uses with much success.
Erm, enough.
-knewter
Jira is by far the best, they have legendary support (really they do), and for non-open source products, its probably the best supported commercial product ever. It also has a really good community surrounding it, and by far the best interface. It's also not legendarily expensive. Very affordable from a company point of view. Excellent functionality, pretty much handles anything you throw at it.
What in Mercurial makes it superior to git?
As a user of both, my conclusion is that git is comprehensively superior to Mercurial and Subversion. The basis of that conclusion includes:
Flyspray has some good SVN integration, and is by far one of the best trackers i have tried.
People who think they know everything are a great annoyance to those of us who do.
It's like this. If you see somebody about to make a big mistake and a little mistake, you won't tell them about the little mistake first. Choosing the wrong issue tracker is not as serious as moving away from an expensive commercial SCM into ... subversion.
I know I'm not answering your question, but you may be asking the wrong question. Subversion 1.5 "has" merge support, but you still can't do safe bi-directional merges. (Wherein you make a feature branch "foo", merge from trunk to foo, foo to trunk, trunk to foo, foo to trunk, etc.)
Also, you can't safely merge from branch to branch (merging from "foo" to your production "2.x" branch, without passing through trunk).
Here's the designer of SVN merge support discussing the problem:
http://subversion.tigris.org/servlets/ReadMsg?listName=dev&msgNo=127570
Unfortunately, if you want real merges in an open source project, you're stuck with the distributed source control systems like git, mercurial, darcs, etc. even if you don't need distributed features.
But you may come to like distributed source control (many people do)... they have tools like "ticgit" that you may like better than some of the other svn-based tools out there.
When I moderate, I only use "-1, Overrated". That way, I never get meta-moderated!
Bugzilla - Nice and lots of support, but the interface makes you want to kill yourself.
No it doesn't.
It makes me want to kill others. :)
Quote from their website: "BUGS - the Bug Genie" is an open source enterprise level issue tracking system, built on open source technology. "BUGS" enhances your development process, by offering an advanced tool to manage bug reports, feature requests and user feedback for your products. Version 2 (currently beta) support SVN integration.
You can use Bugzilla and Subversion using scmbug (http://freshmeat.net/projects/scmbug/). It's a set of scripts you use as svn hooks. Setting it up is not really user-friendly but once it's set, well... you don't have to touch it anymore.
You can solve a bug using the following comment on a svn commit:
bug 42: resolved fixed
blablablablah (real comment)...
BTW it works for other control and bug-tracking systems...
As you can tell, from their use of the word "plumbing" for the actual code, and "porcelain" for the user interface..
I hate to make you think about moving again, but why not try Bazaar? It allows both the natural branching you like and the pedestrian centralized version management that your designers are used to - at the same time!
Yeah, how dare he mention something better?
Hg is lots nicer, I've dropped SVN for it too. git is the other nice one, unless you happen to use Windows like 90% of the planet.
The main reason that people don't use branching more is because it has been very painful to merge the branches together again. The current generation of DVCS tools were all designed to mitigate this as much as possible.
I suspect much of your fear is from these painful merge experiences.
With plugins that can two-way-synch between the DVCS tool and Subversion available for several of the DVCS tools, there's no real barrier to trying them out, using them for branching, and discovering how much less painful merging is now.
not exactly what it was asked but one of the best open source ticket tracking tools over there I think is OTRS (no SVN integration and Perl based, though).
I use OTRS every day but I dislike the layout. I prefer the interface choices made by RT. The problem is that RT is getting to be a really heavy beast, and the mail->ticket interface could be made to lose tickets :-(
But it's so very heavy that . . . google . . . yes, a search on RT + subversion returns discussions about integration, things like "if your commit log looks like this:
RT-Ticket: 23
RT-Status: resolved
this is a commit log
then RT will add the commit log to ticket 23, resolve ticket 23 and make ticket 23 "link" to the transaction.
Linking to the transaction doesn't currently do much, but in the future, it should like to viewcvs or some other similar tool"
This was in 2004!
Take a look at Scarab (http://scarab.tigris.org). Setting it up takes a bit of time, but it's very versatile.
I am a satisfied user of TrackStudio from http://www.trackstudio.com/ Web-based, affordable, very configurable, and with an easy to configure integration with SVN. You can use most major databases for backend. You can model any number of workflows and have custom fields per workflow, per project or per user. Very effective searching and filtering allowing custom views. Email notification, Digests, RSS, etc. It also has an extensive SOAP interface if you need do some custom integration. It still is a bit weak on the report side, but the next major release give us a proper report designer. Most importantly, they have great support and are very receptive to your requirements, adding features that are frequently requested and of general interest. http://www.trackstudio.com/documentation/35/html/frames.html
Lars F.
What about http://www.gforge.org? They have an open source product (based on Sourceforge branch?). They also have an Express Edition (free) and Advanced Server edition (commercial) available through http://www.gforgegroup.com./ I just started looking into their products and I've installed GForge EE, though we haven't really used it in anger yet.
My Company has been using Trac as an Issue Tracker for our SVN Repository for a number of years now, and we've done very little modification to it to perform well.
We've recently moved over to Polarion for it's holistic approach to the Full SDLC especially leveraging it's Project Management Tool Suite.
So far Polarion is a winner for us moving forward.
http://www.polarion.com/
mantis gets my vote but the interface isn't as pretty as it could be.
http://www.mantisbt.org/
Use Trac. My company uses Trac for our SVN repository, and it works beautifully (I'm also the main Trac admin at work, so I'm quite familiar with it).
It's more than just an issue tracker--it has a full source code browser with diff support and syntax highlighting.
You can tie tickets and commits very tightly together; Trac supports SVN hooks that can require a ticket to be referenced in every commit message. If you ref a ticket number in a commit message, a comment will be added to the ticket with the text of the commit message and a link to the changeset diff (yes, you can ref multiple tickets in one commit). If you put the phrase "Fixes #someticketnumber" in the commit message, Trac will even automatically close the ticket as fixed. That's pretty awesome--you can just commit and not have to worry about manually closing the ticket.
I support the Center for Consumer Freedom
use git
Does anyone have any experience with this tool?
GForge.
Been using it for awhile and works rather well.
http://gforge.org/
You forgot to mention Insecticida.
http://sourceforge.net/projects/insecticida/
Interesting comment.
Interesting. MOD PARENT UP.
Not too long ago we migrated from sourceforge to RT3; the SF VM died and we were already in the process of migrating from prebuilt VMWare services to natively hosted stuff. SF is unfortunately no longer (maybe it never was) available as a project in this fashion, and we were only using it for the tracker.
RT3 is a pretty decent system, but the interface is rather complicated and cluttered, and modifying it is not as easy a task as one might expect. For example, "resolved" items do not show up in any listings by default, and making custom listings or modifying existing ones can be painful, so we are instead using a 'resolved' queue and never actually resolving issues "the RT way."
I have taken another look at Mantis and it looks like it does everything we need and isn't overly complicated, so I've put up a copy for evaluation by management.
Mantis claims to have integration with subversion built in, but even if it doesn't, it's really easy to use the subversion commit hooks to do some form of integration yourself.