8

does anyone have a good idea for what I might use ?

RRUZ
  • 134,889
  • 20
  • 356
  • 483
Attilah
  • 17,632
  • 38
  • 139
  • 202
  • 2
    Is there a reason why you would want a special VCS for Delphi? I'm quite happy with Subversion for all of my projects, but I've never used Delphi. – Thomas Owens Jun 26 '09 at 12:59
  • Thomas, I guess he's lazy to right click folder then click commit. He wants something integrated with IDE :-) – curious slab Jun 26 '09 at 13:33

14 Answers14

19

Its not specific to Delphi but SVN is the way to go for version control.

server - subversion (http://subversion.tigris.org/)

windows client - TortoiseSVN (http://tortoisesvn.tigris.org/)

Lawrence Barsanti
  • 31,929
  • 10
  • 46
  • 68
16

I use Team Coherence, from QSC. This integrates nicely into Delphi (I think the standalone desktop client app itself is written in Delphi too) and it can be used over a network/the web etc.

I'm a 'lone developer' who uses it to get to my source code wherever I am. It does all the obvious source control stuff pretty well (versioning, history, comparisons), and I'm happy with it.

It's not free, but if you want something that really does plug into the Delphi IDE, and that 'understands' Delphi sourcecode and projects (for instance, checking out a form is a single operation - .DFM and .PAS are intelligently linked together in the mind of TC), then it's worth a look. I'm quite happy with it.

robsoft
  • 5,525
  • 4
  • 35
  • 47
  • 1
    If you happened to be someone who downvoted me for this answer, could you please explain why? The question was for Delphi-friendly VCS, of which TC certainly is. Perhaps I'm being punished for the 'trendy' swipe at Subversion...? :-) – robsoft Jul 08 '09 at 14:11
  • 1
    I don't know Team Coherence, but maybe some people downvoted because they think it is a bad choice? It would really help if those people would in fact comment on their downvote then, rather than leaving us wondering here. – Arjan Jul 08 '09 at 16:09
  • 3
    I'm removing the comment about subversion from this because I'm repeatedly getting voted-down by drive-by cowards who vote answers down without bothering to explain why. I think this one has been down voted about 8 times already, presumably from subversion fanboys who are too insecure to let a stranger on the internet refer to their VCS of choice as 'trendy'. *sigh* – robsoft Jul 24 '09 at 09:29
  • Hi, I just added a post about my experience with TC. Not sure that it explains any downvotes, but hopefully it will add another perspective for anyone considering using it. – dominic Feb 09 '10 at 03:57
7

All version control systems should work just fine for you. You do not need a specific version control system for Delphi, or any language for that matter.

Some ideas:

  • Subversion (Central and simple to install and learn)
  • Mercurial (Distributed and easy to learn)
  • Git (Distributed; best for Linux, not Windows; does everything)
geowa4
  • 40,390
  • 17
  • 88
  • 107
  • 1
    git works great under windows. i use it for all kinds of things under linux and windows. git's the best thing out there right now. I've used VSS, PVCS, ClearCase, CVS, Subversion. Git beats them all on performance, flexibility of workflow. – Don Branson Jun 26 '09 at 20:52
  • 1
    I noticed that you didnt mention another dvcs there. also, git for windows requires cygwin or msys--hardly native support IMO. – geowa4 Jun 26 '09 at 21:30
4

I have moved away from VSS to Subversion with Tsvn, you can look previous question I asked about replacing the VSS for better VCS with Delphi Moving away from VSS.

And to make the moving to Subversion easy, use VisualSvn server, which is very easy to install and work with.

The good thing about moving to Subversion that next Delphi version will include support to it from inside the IDE.

Community
  • 1
  • 1
Mohammed Nasman
  • 10,992
  • 7
  • 43
  • 68
4

I would like to recommend Plastic SCM. We used Team Coherance before, but due to multiple reasons (slow, bugs, etc) we have chosen for Plastic SCM: http://www.codicesoftware.com/xpfront.aspx

Very good support (email reaction mostly within 1 hour!) and it has fabulous branch and merging support! Task driven parallel development with multiple developers works much better than traditional version systems like TC, CVS, etc.

André
  • 8,920
  • 1
  • 24
  • 24
  • +1 Yup, I am using it too & have found nothing better (for free; even commercial use up to 15 users). Plus that sent me a free T-shirt fro answering questions about my usage, in order to help them improve (id only they had sent bacon!). Great tech support too. – Mawg says reinstate Monica May 12 '14 at 02:51
2

I'd recommend a DVCS (Distributed Version Control System). I'm not going to give a specific one to avoid potential flaming, but the big ones are Git, Mercurial, and Bazaar, all of which are quite good.

These allow you the benefit of working offline and working from any computer, while still maintaining version history.

Also, since it's distributed, you don't need some central server, so if a computer crashes, you're still good to go.

Here is a good article about DVCS vs traditional VCS (such as SVN).

samoz
  • 56,849
  • 55
  • 141
  • 195
  • 4
    A DVCS is no replacement for a proper backup strategy. – mghie Jun 26 '09 at 13:14
  • 1
    he's asking about version control, not back up strategies. DVCS are wonderful for version control. If set up properly, they can also be a backup strategy by placing a copy of mainline on some backup server. – samoz Jun 26 '09 at 13:24
  • 2
    You brought the crashing computer into it... – mghie Jun 26 '09 at 13:30
  • In other news, RAID is also not backup. Since you were saying "if a computer crashes", you were talking about backup, yes, your data may be distributed, SVN is usually good enough. – Osama Al-Maadeed Jun 30 '09 at 17:00
  • 1
    DVCS isnt just good enough though, it's better. – samoz Jun 30 '09 at 17:19
2

First, don't choose your version control system primarily on the level of integration with the IDE!

Subversion, as many have said, is pretty much the de-facto standard for modern version control software.

Personally I just use TortoiseSvn, and don't worry about integration into the IDE.

If you want integration into the IDE, look at SourceConnexion from Epocalipse. They have a D2009 version.

Codegear have hinted that SVN integration could well be in the next release of delphi anyway.

Roddy
  • 66,617
  • 42
  • 165
  • 277
2

As an earlier poster mentioned Team Coherence, I thought I would add some comments based on my experience of it.

I used Team Coherence (TC) as part of a small team of three to four people for two years, and then we swapped to AccuRev. I would say that for a single developer with simple version control requirements TC would be OK, especially if they use Delphi.

However, (amongst other things) we needed to be able to:

  1. Support mainline development whilst also keeping a release branch for urgent customer bug fixes.
  2. Link items in our bug-tracking system with sets of checked-in changes ("change-set tracking").

We found that using TC to do branching was very confusing. It is much easier to support our branching requirements with AccuRev.

In addition TC didn't support grouping checkins into change-sets, and so it couldn't really fulfil requirement 2.

However, AccuRev is more expensive than TC. Subversion is free, and seems to support branching very well, but as I have only used it for very small projects at home I will leave it to others more experienced with it to recommend it or not.

In short, if you need to support multiple branches, or change-set tracking I would not recommend TC. If, however, your version control requirements are simple (check-in, check-out, version differencing) and you use Delphi, then TC may be an appropriate choice.

dominic
  • 401
  • 5
  • 12
  • As that earlier poster, I'd agree with some of your comments regarding TC, Dominic. One of my clients uses it (I work with a developer there) and although they use TC's Tracker to follow bugs, there seems to be little real integration with the source control itself. – robsoft Feb 09 '10 at 10:25
1

The company I work for uses Vault but would I advise it? Well, it's better than VSS that we used before.

We combine this with SourceConneXion which is a Delphi IDE plugin and which supports several source control products, including Vault, Subversion, CVS and whatever else you might think of.

Since we're developing in both Delphi and .NET, these products work quite well for my organisation.

Btw, if you're a single developer and only want one license then Vault is free!

Wim ten Brink
  • 25,901
  • 20
  • 83
  • 149
  • 1
    My company also uses Vault, and we've been very happy with it. If you look on the Vault website they have an interesting comparison vs Subversion. – Alistair Ward Jun 30 '09 at 02:35
1

We are using since two years JediVCS (part of the Jedi Proyject). It's stable and work outside the IDE (standalone application) or Integrated with the Delphi IDE.

Work with a lot of servers:

  • DBISAM 3.x
  • FlashFiler 2.13 (Open Source version)
  • Firebird 1.0x, 1.5x, 1.5x embedded (with support for characterset configuration)
  • Oracle 8.x, 9.x, 10.x
  • MSSQL 7, 8, 2000 (with both supported security models ("Trusted NT security" or "SQL based")
  • MySQL 3.23x, 4.0x, 4.1x

NOTE: Here you can see a video of installation process, the integration with Delphi IDE, Check-in and Check-out files process...

Regards.

  • I also used JediVCS for quite some time, but if I was starting new I would most likely select SVN due to its strong industry support and the rumored integration into the next version of Delphi. – skamradt Jun 26 '09 at 15:41
  • 2
    Their FAQ states that JediVCS doesn't let two developers to edit the same file. Is that true? If that's the case, it's unacceptable. – João Marcus Jun 26 '09 at 20:50
1

Try Plastic SCM together with SourceConneXion integration.

Take a look at the following posts here:

Actually it is a very strong combination since Delphi is probably the greatest IDE/language combination for most tasks, and Plastic the strongest for parallel development.

pablo
  • 6,392
  • 4
  • 42
  • 62
0

If you are a single developer, then Perforce is a good choice. It's free for 1 or 2 developers. You can use the command line or the gui (P4V) which makes it pretty easy. I've used it for a few years now, and even when I had an issue with it about a year ago, their support was great, treated me like a paying customer, which I'm not. It's easy to set-up, and there's plenty of documentation. It also integrates into other applications like Teamcity and Jira/Fisheye.

Just my 2 cents.

Vic Adam
  • 146
  • 2
0

Tortoise SVN Complicated at first but very reliable

junmats
  • 1,894
  • 2
  • 23
  • 36