[i=s] 本帖最后由 scmroad 于 2013-10-14 14:11 编辑
Accurev SCM
Does anyone use Accurev for Source Control Management? We are switching (eventually) from StarTeam to Accurev.
My initial impression is that the GUI tool is severely lacking, however the underlying engine, and the branches as streams concept is incredible.
The biggest difficulty we are facing is assessing our own DIY tools that interfaced with starteam, and either replacing them with DIY new tools, or finding and
purchasing appropriate replacements.
Additionally, is anyone using the AccuWork component for Issue management? Starteam had a very nice change request system, and AccuWork does not come close to
matching it. We are evaluating either using Accuwork, or buying a 3rd party package such as JIRA.
Opinions?
accurev FlySwat
businesssavvysoftware.com/2010/11/03/scm-with-accurev – user558526 Dec 30 '10 at 17:33
closed as not constructive by Łukasz Niemier, Ben D, animuson, hohner, Sgoettschkes Mar 17 at 22:49
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question
will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center
for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.
Honestly, I feel like I need to double check to see if I'm using the same tool as these folks that seem to like Accurev. I used Subversion in my previous job and
liked it a lot. We never had any issues with it to speak of, and of course the price is right. My biggest problem with Accurev is that it seems they felt the need to
be different for different's sake. It uses a completely different vocabulary to express versioning concepts, that even after using it for almost 6 months, feels very
foreign to me. It has no fewer than 8 or 9 states any given file can be in, compared to about around 1/2 as many for Subversion. The GUI is crappy and slow, and the
IDE integration plugins are sub-par. I had assumed that at some point I would "get" Accurev and see why it's so much better, but that has yet to happen. My advice is
to stay away.
Why don't you try git, I'm sure you'll love it ;) – Benjol
-1 : Given the budget, I'd choose AccuRev over any other SCM tool I've ever tried. – Martin
+1 for the GUI is crappy and slow – Diederik
User experience is terrible. These guys don't know how to make good UI. – grigy
Yeah, used it for 8 months, never got it, using HG now, happiness. – ttt
Sweet mother of god is Accurev awful. 300k lines of code? Try it with millions, with hundreds of developers working on scores of projects.
Continuous integration? Sure, that's something that developers can approximate by doing regular merges in, say, perforce, git, mercurial, or any of the countless
other tools that actually gets the work done, but it becomes the choice of the developer as to how to proceed. For architects, leads, build engineers, or anyone who
actually uses source control to slice and dice, Accurev is horrific.
I went to an "Advanced Accurev topics" talk, and the first tidbit was a large shell command for clearing out Accurev's client-side caching/sync mechanism to correct
for when Accurev updates silently fail to pull down files that should be updated.
A Timestamp Optimization checkbox? Deep overlaps? Modal dialogs with only one background process? (That would be okay if those processes were anything other than
glacial.) Cascading graphs of selectively configured streams put in place just to be able to pull off components and cross-merging? Updates aren't actually atomic
without time-locking?! (honest answer: update again)
Every time I try and do anything serious in Accurev, I feel like I'm playing Russian Roulette at a table with HAL9000, Skynet, and a Speak & Spell. On the line? Four
more hours of my life.
Why am I here, griping about Accurev? Because my other machine has taken a full four hours to try to update 10MB of files over VPN. Why? Because some other change
has come up stranded and requires some sort of catastrophic resync scan for elements. The worst part? All of these files were on a workspace on the same computer.
We're talking about several hours just to get a recently updated workspace to the point where I can put the right notches in the stream history.
One word Accurev review: Avoid
@Martin, the topic question was about Accurev, not about "being constructive". This answer contains valuable information based on actual experience, it's just as
well you didn't down vote it. – Justicle Jan 4 '12 at 20:05
@Justicle: Weeeell - "valuable info" and "being constructive" go along for me. This post is -- IMHO -- a rant in that it turns anecdotal experiences into a verdict
about a product. Judge for yourself how "valuable" that is. – Martin Ba Jan 5 '12 at 18:03
@Martin - so you should add an answer with your experiences and why you like it better than other tools. I'd vote it up, even thought I can't stand Accurev. (Note it
seems your existing answer just quotes a third party review, which IMO is less useful than this answser). – Justicle Jan 5 '12 at 21:53
Having experienced the train wreck that is silent failures to update I totally agree with this assessment. If you have the luxury of employing multiple Accurev
Admins, want your developers to spend inordinate effort in learning the intricacies of the product yet remain baffled, and have your developers pull their hair out
with frustration, then Accurev is for you. If not, you can use any of the popular free products, Mercurial, Git et al. SCM just does not need to be as difficult as
Accurev makes it. – Tim Apr 27 '12 at 3:37
@Tim - That's definitely it. If you're going to pay that kind of money (i.e. money), go Perforce. Otherwise, look at Mercurial, Git, or just about anything else.
Where I used Accurev, we came from ClearCase, which was unbelievably crappy. Somehow, Accurev had most of the team pining for the good old days after over a year to
get used to it. I will physically fight anyone who attempts to inflict Accurev on any team I work with. The only people who seem to like it are Accurev employees,
developer support (job security?), and the terminally incompetent. – chaboud May 15 '12 at 2:53
I have used AccuRev for nine months and I anxiously await the day I use it no more. My one line review is:
It's like source control written by developers who have read about it in a book, but have never actually used it before.
Basic concepts are missing or extremely complicated. Example, I've just lost 8 hours work because there's no good way to "revert" a change once it's in a stream. You
can "purge" that transaction - but thats it its gone, you can't then cherry pick the changes you really wanted.
The GUI is slow, bloated and inconsistent. Warnings are cryptic eg "error merging element id 1234556". Every single dialog box is modal. As one poster said, there
are 9 states a file can be in - but what's more, you must manually click through a list box of 9 options to see the setting for each file.
The streams model sounds like a good idea, but the default behavior of "inheriting" changes from a parent stream is actually incredibly bad in practice. Just say the
word "Deep Overlap" to anyone who has really used AccuRev and watch them shudder, turn pale, and/or faint. Making the streams is very easy, but actually merging them
with any meaningful differences is arcane and non-deterministic.
No one has mentioned this, but the whole system of "include/exclude" rules to manage file and directory filters is completely broken. This system lives outside the
transaction system so there's no way to revert, track history or reproduce changes to a live source stream - for example when Johnny Intern decides the "core"
library isn't useful to the entire development team.
The only reason I can account for Accurev's popularity is that it is optimized for the "Demo to Management" case. We're using AccuRev for serious software
development - dozens of projects and many more developers. The streams and the GUI look great but after a few weeks use varnish comes off revealing a old, busted,
mechanical-turk like system.
Stay far away from Accurev - use Git or Mercurial if you want something modern and free, or Perforce if you want something rock solid, well-supported but expensive.
EDIT: As a postscript here's one of the many examples of the lack of care and general shoddiness in the UI:
The default difference viewer has its numbering "off by one" - for example if you have 2 diffs in a file - the viewer shows diff "0 of 1" and diff "1 of 1". I mean,
really, would you feel comfortable trusting your code to a system that exhibits such a stupid and easily fixable bug.
Hi, for point 1, there's a great answer for this problem at stackoverflow.com/questions/2406329/…. The trick to getting your original changes back is to "revert"
your "revert" back into your workspace, then you should be able to do the cherry-picking you want. – dominic Feb 2 '11 at 0:05
Thanks, but the "revert" button is never enabled for me, which also reinforces point #2. – Justicle Feb 2 '11 at 20:42
What system would you use if you had the choice? (You know, one where you then reliably prevent Johnny Intern from messing up things if you give him write access.) –
Martin Ba Jan 6 '12 at 12:26
@Martin No system can prevent messing things up, but any other SCM would record Johnny's changes as a transaction, and would therefore be revertible. Accurev
doesn't, and this issue has already hit us several times. Again, if you love Accurev so much, then add an answer instead of making asinine comments on reviews you
don't agree with. – Justicle Jan 6 '12 at 19:32
By Jove, @Justicle, what version of AccuRev are you using? incl/excl are perfectly transactional and time-safe, they do NOT live outside of the transaction system!
Am using them all the time. – vladr Apr 29 '12 at 11:29
I worked on (and administrated) AccuRev for more than a year lately, and most of my impressions are very good.
We evaluated it alongside with "Plastic SCM", SVN and "ClearCase-UCM" (that we already owned and used), and decided to dump ClearCase and SVN (both were used in two
different groups) and to purchase AccuRev.
First, the stream architecture is much more solid, easy and safe SCM method than the old branching architecture that all the other tools are tied to (yes even
ClearCase's "streams" are eventually a wrapper of branches). There's a lot of articles about the differences in their site, you can search and read about it to make
it understandable. (Try this link, and this one too)
The timesafe architecture - you can't delete anything from the depots (=repositories) database. I saw tools that this operation is possible with the proper admin
permissions. In AccuRev you will use internal commands in order to change or fix a mistake you made, which in turn will be recorded as a new transaction also. Very
smart very safe.
integrations! AccuRev integrates with so many tools (to give you ALM bundle) - bug tracking tools (like JIRA, ClearQuest), IDEs, testing tools (quality center), and
if you can't find one you can write your own (they provide Java/Perl/XML/CLI SDKs)
Change Package, I don't know about you, but I can't stand SCM tools that doesn't supply change management (did anyone said SVN?), like ClearCase "activities", and
AccuRev's "issues". It's a must for my opinion, and one of my CM "best practice". And they can be integrated with your bug tracking tool too, so your users can work
on real tasks like features and defects.
the support is just amazing. As a former client of IBM (because of Rational ClearCase is now part of IBM), the shift to AccuRev was simply awesome. During the
evaluation they gave numerous on-line support to understand how we want the tool to act for us, so we tweaked it together even before we payed a cent. And they kept
that degree of responsiveness after that evaluation period too; We had some problem during an upgrade from 4.5.4 to 4.6, in just a couple of hours (while the upgrade
is still in process) the support guy contacted me back, suggested a few tips, connected to my desktop and finally fixed the problem before any other company's
support would even started to try to figure who you are. Of course that if you choose open source tool than you're on your own! Also the tool comes with help system,
which can be even too verbose sometimes. And don't forget the forums (especially on cmcrossroads) that are very good in supplying rapid answers too.
And there's so many more....
Of course there are also drawbacks (which software is perfect?) - I would like, for example, to see the file(s) <-> issue(s) association during check-in too, like in
ClearCase, not just in "promotion" like it is today - but IMHO they are really minor.
So, as you can understand, if you read it all, I'm a big fan of AccuRev, and I'm highly recommending it. IMHO, it is today one of the best SCM tools you got the
chance to work on; modern, wise, easy and strong.
The DaveOnSCM link makes a compelling case for stream with agile. How well does it handle conflicts and where does it break down? – Peter Kahn Oct 22 '09 at 17:33
-1 SVN has changelists... – Tim Jun 29 '10 at 15:38
So how does it compare to Plastic SCM? – Egor Pavlikhin Feb 1 '11 at 1:31
-1 for the first three points. I can't see from my experience how Accurev's streams are that much different from conventional branches, and you don't explain it
(neither links do). I don't buy point 2 as a standing out advantage — every other SCM out there doesn't allow users to destroy information already in the repository,
and do allow repo admins to do that. I disagree that "integration" is any advantageous too: it is a necessary requirement for any SCM system, and opensource tools
are much more prolific in that regard. – ulidtko May 23 '12 at 16:23
To sum up, the commercial support and the "issues" feature remain the real strong points of AccuRev to me. Though our company doesn't use the latter (neither do I),
so I can't criticize properly. – ulidtko May 23 '12 at 16:27
Accurev sucks! It's overcomplicated for the price of productivity of the team. I've worked with several SCMs and the idea of accurev is great but not practical. It's
Merge Hell with a hierarchy that looks good in the UI but is pain to deal with when it comes to real life. Specially when you refactor your code (something that some
people actually do everyonce in a while) and you get in a mess when a defunct file is not promote all the way up. Or even worse if somebody else overrides a defunct
file and creates a new file with the same name....etc
The UI is incredible terrible. Which honestly doesn't matter how good you think the backend is. You will still use the UI (I use the VS plugin which is half decent
except it freezes the IDE sometimes, nice huh!).
If you live in the 80's and are planing to use the command line for you day to day use, then i guess you can avoid the UI. If you have an integration build server
then of course you have no choice but to use the command line (No native tasks for MSbuild/ANT/NANT that i know of). I just heard that they are doing some work with
http://www.electric-cloud.com/. Don't know anything about it still.
Accurev is new therefore there has little resources available online as apposed to svn which you would find tons of integration work that was done by hundreds (with
jira for example).
If you are a manager. Accurev will make you feel good looking at the streams, because it does look pretty as long as you dont have to deal with it..
If you are a developer, (a junior developer will not care much, he/she will do whatever you ask them to do)
If you are an architect, refactors a lot, re-addresses architecural descisions...etc you will find accurev as your worste enemy, moving stuff around is pain. Very
anti-agile if you ask me. It's not fluid..
If you are a build engineer, you will find it PAIN to get all the developers into a procedure, which you will have to do if you use accurev (ex. promote their code
to the agreed upon stream in preperation for a release)....
CRM is supposed to make things easier... I dont see Accurev at this point doing that.. It's still not mature enough, If you want to be a pioneer and strugle in the
hope for things to get better..go for it.. Otherwise, don't re-invent the wheel and go with something more established with much more case studies and applications.
Because to be practical, what accurev claims to offer that differs is not worth it when you deal with it's pains on a daily basis...