Since I'm sure you'll get 3 million posts recommending git, might I suggest taking a look at bazaar (
www.bazaar-vcs.org). Most the commands and lingo map right to the terms svn uses, and for me it's far more intuitive and useful than git.
It's being maintained by the guys at Canonical (of Ubuntu fame).
i don't have any experience with git or any of the distributed source control systems, but you definitely shouldn't blame SVN based on the performance (or lack thereof) of NHibernate's repository. Sourceforge's SVN is the worst i've ever used and i frequently have problems with it as well. Simply put: it is the worst possible SVN provider to base your decisions on :)
Other than sourceforge's SVN, i'm quite happy with SVN performance in general
Unfortunately there does not seem to be a nice shell and vs integration für version control system other that svn. thats why i think git is kind of time-consuming.
Our company has migrated to mercurial (from SVN) a while ago - because we became tired of lags and merge conflicts. After migration it works like a charm, except for the fact that TortoiseHG GUI still lacks the usability of TortioseSVN a lot. Personally, I'm a fan of command line interface anyway - and Mercurial CLI is easy and consistent.
We considered git and Bazaar initially, but choose Mercurial because it looked more windows-friendly, consistent and extensible at the moment.
I'm sick of subversion's crappy branching. We refactored our repository recently, fixed a lot of problems with it, upgraded everything to the newest and latest.
Branching on subversion still sucks! It's easier, quicker, and more reliable for us to keep a bunch of patch files hanging around.
Jeeze, it's almost 2010, and I still can't believe I'm fighting stuff like this.
I'm gonna post the first of the 3 million comments suggesting Git. I've been using it at work (on Windows) for over a year now without any problems. We've switched to it after ~5 months of using Mercurial and never regretted it. Branching in Mercurial seems just wrong after you've used Git. Also, there are some good GUIs out there, but I've found myself just using the command line after some time. If anything, it's a lot more efficient than using a GUI.
Being a fellow Windows developer I'd recommend Mercurial. I shares the same general ideas as Git, but being written in Python there's no hack necessary to run it on Windows. Another nice touch is that it's protocol is built for the web, where Git is not.
As others have pointed out it's supported by Google Code, and Bitbucket seems to run smoother than GitHub.
We're using Git even though the tools aren't the most mature in the Windows realm. It would appear that the only logical choice is between Mercurial and Git.
The SVN client hangs and locks-up our 8 and 16 core Vista, XP, and Windows 7 machines every time any of my 20 developers do an svn update. The server is a DL380 with 2 quad core procs running on Windows Server 2008 x64 with 4G of memory.
To be fair, I think that the issue is how large our repository is, but I've seen similar complaints from lots of people that use SVN on windows.
I know this isn't a SC fanboy forum, but just because SVNs network code sucks, doesn't mean DVCS is the only solution. And mind you, SVN does suck. I've had the above many times, not to mention the near uselessness of blame and the log of revision graph. You know you're in trouble when the tool warns you that this could take a long time.
I do the same operations on larger perforce repositories all the time and timelapse (blame), sync, revision graph, etc. are all nice and snappy even though it's a centralized server.
Although i need to investigate git a bit more. As i understand the command line tools are plenty mature on windows, but the command line itself is a piece of crap. And cygwin only goes a small way to providing a better experience.
I guess I can only be the 4th to recommend Mercurial. I could understand choosing Git (IMO windows support still isn't as good). Though Bzr is improving it still has not quite caught up and every release has had breaking changes.
We made the switch several years ago and haven't looked back. For OSS I fail to see the reasoning for a CVCS.
@Arne:
A DVCS isn't the only solution but it is the (current) best solution for any project which intends on being as open as it can in accepting contributions.
Yeah, i've been thinking something is up with SVN myself. Maybe a bit under a year ago i noticed SVN locking up my system when i do updates. It had never done that before. Normally i could start an update and go do other things while i waited for the network. Or so i assumed.
So what changed? The CPU is not the bottleneck here. Did my network get faster ? I doubt that. It seems like SVN is now bottlenecking my disk drive. Maybe their disk access code just got better ? Did they trigger the process to run at a higher priority? or are they somehow locking access to disk hardware to somehow speed up access for SVN at expense of all other processes ? anyhow. this effect is new.
I've had that issue numerous times using TortoiseSVN, I no longer use it now and have switched to AnkhSVN for Visual Studio. I've never had that issue since.
I keep TortoiseSVN installed tho because occassionally if the files go out-of-sync it's easier to fix using TortoiseSVN than AnkhSVN.
> Email-style angle brackets
> are used for blockquotes.
> > And, they can be nested.
> #### Headers in blockquotes
>
> * You can quote a list.
> * Etc.
Horizontal Rules
Three or more dashes or asterisks:
---
* * *
- - - -
Manual Line Breaks
End a line with two or more spaces:
Roses are red,
Violets are blue.
Fenced Code Blocks
Code blocks delimited by 3 or more backticks or tildas:
```
This is a preformatted
code block
```
Header IDs
Set the id of headings with {#<id>} at end of heading line:
## My Heading {#myheading}
Tables
Fruit |Color
---------|----------
Apples |Red
Pears |Green
Bananas |Yellow
Definition Lists
Term 1
: Definition 1
Term 2
: Definition 2
Footnotes
Body text with a footnote [^1]
[^1]: Footnote text here
Abbreviations
MDD <- will have title
*[MDD]: MarkdownDeep
FUTURE POSTS
Partial writes, IO_Uring and safety - about one day from now
Configuration values & Escape hatches - 4 days from now
What happens when a sparse file allocation fails? - 6 days from now
NTFS has an emergency stash of disk space - 8 days from now
Challenge: Giving file system developer ulcer - 11 days from now
And 4 more posts are pending...
There are posts all the way to Feb 17, 2025
RECENT SERIES
Challenge
(77): 20 Jan 2025 - What does this code do?
Answer
(13): 22 Jan 2025 - What does this code do?
Comments
waht version are u using?
Since I'm sure you'll get 3 million posts recommending git, might I suggest taking a look at bazaar ( www.bazaar-vcs.org). Most the commands and lingo map right to the terms svn uses, and for me it's far more intuitive and useful than git.
It's being maintained by the guys at Canonical (of Ubuntu fame).
Mercurial seems to be getting some traction. It's supported by Google code and it's used by Mozilla and the Python dev team.
i don't have any experience with git or any of the distributed source control systems, but you definitely shouldn't blame SVN based on the performance (or lack thereof) of NHibernate's repository. Sourceforge's SVN is the worst i've ever used and i frequently have problems with it as well. Simply put: it is the worst possible SVN provider to base your decisions on :)
Other than sourceforge's SVN, i'm quite happy with SVN performance in general
Unfortunately there does not seem to be a nice shell and vs integration für version control system other that svn. thats why i think git is kind of time-consuming.
Our company has migrated to mercurial (from SVN) a while ago - because we became tired of lags and merge conflicts. After migration it works like a charm, except for the fact that TortoiseHG GUI still lacks the usability of TortioseSVN a lot. Personally, I'm a fan of command line interface anyway - and Mercurial CLI is easy and consistent.
We considered git and Bazaar initially, but choose Mercurial because it looked more windows-friendly, consistent and extensible at the moment.
Davy,
SF SVN sucks, but I have seen the same issues over & over again in any SVN installation
I'm sick of subversion's crappy branching. We refactored our repository recently, fixed a lot of problems with it, upgraded everything to the newest and latest.
Branching on subversion still sucks! It's easier, quicker, and more reliable for us to keep a bunch of patch files hanging around.
Jeeze, it's almost 2010, and I still can't believe I'm fighting stuff like this.
I'm gonna post the first of the 3 million comments suggesting Git. I've been using it at work (on Windows) for over a year now without any problems. We've switched to it after ~5 months of using Mercurial and never regretted it. Branching in Mercurial seems just wrong after you've used Git. Also, there are some good GUIs out there, but I've found myself just using the command line after some time. If anything, it's a lot more efficient than using a GUI.
Being a fellow Windows developer I'd recommend Mercurial. I shares the same general ideas as Git, but being written in Python there's no hack necessary to run it on Windows. Another nice touch is that it's protocol is built for the web, where Git is not.
As others have pointed out it's supported by Google Code, and Bitbucket seems to run smoother than GitHub.
It's probably more likely that TortoiseSVN has shitty network code.
We're using Git even though the tools aren't the most mature in the Windows realm. It would appear that the only logical choice is between Mercurial and Git.
The SVN client hangs and locks-up our 8 and 16 core Vista, XP, and Windows 7 machines every time any of my 20 developers do an svn update. The server is a DL380 with 2 quad core procs running on Windows Server 2008 x64 with 4G of memory.
To be fair, I think that the issue is how large our repository is, but I've seen similar complaints from lots of people that use SVN on windows.
We're about to jump ship as well...
I know this isn't a SC fanboy forum, but just because SVNs network code sucks, doesn't mean DVCS is the only solution. And mind you, SVN does suck. I've had the above many times, not to mention the near uselessness of blame and the log of revision graph. You know you're in trouble when the tool warns you that this could take a long time.
I do the same operations on larger perforce repositories all the time and timelapse (blame), sync, revision graph, etc. are all nice and snappy even though it's a centralized server.
Although i need to investigate git a bit more. As i understand the command line tools are plenty mature on windows, but the command line itself is a piece of crap. And cygwin only goes a small way to providing a better experience.
Looks like the problem is with your network not your software. SVN works great for me and many others.
I guess I can only be the 4th to recommend Mercurial. I could understand choosing Git (IMO windows support still isn't as good). Though Bzr is improving it still has not quite caught up and every release has had breaking changes.
We made the switch several years ago and haven't looked back. For OSS I fail to see the reasoning for a CVCS.
@Arne:
A DVCS isn't the only solution but it is the (current) best solution for any project which intends on being as open as it can in accepting contributions.
Yeah, i've been thinking something is up with SVN myself. Maybe a bit under a year ago i noticed SVN locking up my system when i do updates. It had never done that before. Normally i could start an update and go do other things while i waited for the network. Or so i assumed.
So what changed? The CPU is not the bottleneck here. Did my network get faster ? I doubt that. It seems like SVN is now bottlenecking my disk drive. Maybe their disk access code just got better ? Did they trigger the process to run at a higher priority? or are they somehow locking access to disk hardware to somehow speed up access for SVN at expense of all other processes ? anyhow. this effect is new.
I've had that issue numerous times using TortoiseSVN, I no longer use it now and have switched to AnkhSVN for Visual Studio. I've never had that issue since.
I keep TortoiseSVN installed tho because occassionally if the files go out-of-sync it's easier to fix using TortoiseSVN than AnkhSVN.
Eclipse + Subclipse is working well for me.
Comment preview