Jump to content

Recommended Posts

We are planning to update our version control system from Microsoft Visual Sourcesafe. We are looking for a free or paid Version Control System.

 

When I look into the Delphi IDE, there are three options - Subversion, Git and Mercurial. We are in a dilemma which one to use.

People who are using any of those Version Control Systems, please share your experiences. (Or something else out there which are very good to use)

 

 

Share this post


Link to post

Hi...:classic_cool:

Quote

We

...how many users?

 

My favorite is GIT. But NOT over the IDE. :classic_huh: I use TortoiseGIT. It looks like the explorer with overlay icons. :classic_love:...and WITHOUT console. :classic_cheerleader:

Edited by haentschman
  • Like 3

Share this post


Link to post
2 minutes ago, haentschman said:

...how many users?

10 Users currently. But I would like to go for a system which supports many users.

Share this post


Link to post
1 minute ago, haentschman said:

Perfect for GIT... But you have to know that you have to learn a lot to use it wisely.

Thanks for your suggestion. I am also inclined to Git...

Share this post


Link to post
54 minutes ago, Soji said:

Thanks for your suggestion. I am also inclined to Git...

Have you and your coworkers got any experience with Git or Mercurial? If not, I stongly advise against those. They are distributed versioning systems and therefore very different from MSVSS (unless the latter has changed from when I used it) In addition to learn a new VCS you will also have to learn a new concept of VCS.

 

SubVersion more closely resembles the way MSVSS works, so I would suggest using it.

 

Unless of course you have got a need for a distributed VCS, you all already know how to use Git or you want to use Git for other reasons (e.g. it "is the VCS that everybody uses").

 

I agree with @haentschman: Use TortoiseXxx rather than the integrated IDE support, in this case TortoiseSVN.

  • Like 2
  • Sad 1

Share this post


Link to post
2 minutes ago, dummzeuch said:

Have you and your coworkers got any experience with Git or Mercurial? If not, I stongly advise against those. They are distributed versioning systems and therefore very different from MSVSS (unless the latter has changed from when I used it) In addition to learn a new VCS you will also have to learn a new concept of VCS.

Some of us has the experience with Git. But not all. For others it is a big learning curve for sure.

 

5 minutes ago, dummzeuch said:

Unless of course you have got a need for a distributed VCS, you all already know how to use Git or you want to use Git for other reasons (e.g. it "is the VCS that everybody uses").

As of now there is no need for distributed VCS.

 

6 minutes ago, dummzeuch said:

I agree with @haentschman: Use TortoiseXxx rather than the integrated IDE support, in this case TortoiseSVN.

Thanks for your suggestion. Will looking into SubVersion also.

Share this post


Link to post

I myself favor Mercurial (hg), but that is just another flavor for the DVCS concept. And we are only two and a half developers. Considering Microsoft themselves favor git over VSS (which they have never used seriously themselves) or TSF, that speaks volumes. Subversion is nice and all, but just can't keep up with the young folks anymore. Why learn to move a two horse carriage, when you could be learning to drive a Model S? So if you consider moving to a different VCS, make the move count.

 

There is not that much to learn anyway. And most of it you'll learn when you need it. Just look at one of the hundreds of VSS->DVCS tutorials and go for it.

 

Best of all, they both are free. Even if you setup an apache server to host a central repository, still free for any amount of users.

 

Edith actually wanted to add Joel Spolskys very cool hginit.com which is a very nice introduction to Mercurial, but it is down for some reason. So instead you get Joels 2010 blog entry on how he took on DVCS after years of Subversion: https://www.joelonsoftware.com/2010/03/17/distributed-version-control-is-here-to-stay-baby/

 

Examples:

https://edmundv.home.xs4all.nl/blog/2014/02/08/migrate-sourcesafe-to-mercurial/

https://www.perforce.com/blog/migrating-visual-sourcesafe-mercurial

https://accu.org/index.php/journals/1828

 

 

 

  • Like 1
  • Thanks 1

Share this post


Link to post

Just switched from Visual Sourcesafe to GitHub. Best decision ever! We use Git Kraken as  git visual interface. It softens the learning curve a lot and it’s the best tool we found to visually manage git. 

  • Like 1

Share this post


Link to post
23 minutes ago, Sherlock said:

Subversion is nice and all, but just can't keep up with the young folks anymore. Why learn to move a two horse carriage, when you could be learning to drive a Model S? So if you consider moving to a different VCS, make the move count.

🙂 

Thanks for your suggestions and example links. Very helpful.

Share this post


Link to post
21 minutes ago, TiGü said:

Have a look to Microsofts Team Foundation Server:

Thanks for your suggestion.

Share this post


Link to post
17 minutes ago, Gustavo Ricardi said:

Just switched from Visual Sourcesafe to GitHub. Best decision ever! We use Git Kraken as  git visual interface. It softens the learning curve a lot and it’s the best tool we found to visually manage git. 

👍

I will explore Git Kraken. If we are moving to Git, we prefer a GUI.

Share this post


Link to post

On a totally unrelated matter I would like to direct your attention to a completely underrated feature of Delphi: LiveBlame - in the IDE!

1912315494_Screenshot2019-02-01um13_55_45.png.b2f469d36bf60fe4e5ebc68fe0bdc511.png

 

This however works with hg,git and Subversion. But I just love this! I love to put blame on others, and then find out it was my fault after all! 😄

 

  • Like 1
  • Haha 3

Share this post


Link to post
52 minutes ago, Sherlock said:

On a totally unrelated matter I would like to direct your attention to a completely underrated feature of Delphi: LiveBlame - in the IDE!

👍

Share this post


Link to post

GitKraken is not free for commercial use though.

 

I like using SourceTree (after the 2.x disaster in 3.x it's usable again).

  • Like 1
  • Thanks 1

Share this post


Link to post
2 minutes ago, Stefan Glienke said:

GitKraken is not free for commercial use though.

We are open for commercial solution also.

Thanks for your suggestion.

 

Share this post


Link to post
10 minutes ago, Stefan Glienke said:

I like using SourceTree (after the 2.x disaster in 3.x it's usable again).

As I am still looking for a usable GIT client that matches the ease of the TortoiseHG workbench, I should probably evaluate SourceTree again.

  • Like 1
  • Thanks 1

Share this post


Link to post

I would suggest Git or Mercurial.

 

Mercurial is a bit easier to learn and most of the time prevents you from shooting yourself in the foot.  TortoiseHg works great and fast.

 

Git is more powerful, but has steeper learning curve  And I still have to find Windows Git client that actually works. On Mac SourceTree works fine, on Windows not so much - slow beyond description.

  • Thanks 1

Share this post


Link to post
2 hours ago, Gustavo Ricardi said:

Just switched from Visual Sourcesafe to GitHub. Best decision ever! We use Git Kraken as  git visual interface. It softens the learning curve a lot and it’s the best tool we found to visually manage git. 

I also use Gitkraken as my Git UI.

Never been disappointed by it.

  • Thanks 1

Share this post


Link to post

I'd recommend SVN or GIT - and since someone dared to mention it, I'd also like to warn against TFS. It's an abomination and just a tiny improvement over VSS.

In my experience the learning curve, if coming from VSS, is much smaller for SVN than for GIT.

IMO the DVCS aspect of GIT is mostly hype since nobody uses it that way, but it does make it easy to work with local feature branches.

 

If you need your source hosted in the cloud I think GIT is the best solution. There are SVN hosting solutions but in my experience they aren't very good.

 

I personally prefer SVN as it matches the way I think better. I do use GIT but I really have to think hard about what I'm doing every time I need to do something with it. I can picture what I want to do in my head but have a hard time translating that to the available actions.

For SVN I use TortoiseSVN and for GIT TortoiseGIT. I also have SourceTree v1 (v2 is a bad joke) but it's really slow to work with - and buggy. I didn't know there was a newer version, so I'll check that out.

  • Like 1

Share this post


Link to post

I prefer Subversion as it is very easy to use (with TortoiseSVN) and easy to manage in closed environment with its centralized repository storage. Git has its nice features but they are not for everyone, and its distributed nature complicates things. Anyway, here is a very good tutorial how to install a Git server to play with, maybe it can help to make the right choice. TortoiseGIT client is also available.

  • Thanks 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×