Re: Switching from CVS to GIT
- From
- Eli Zaretskii <eliz@gnu.org>
- Date
- Oct 16, 2007, 13:16 UTC
- Message-ID
- <E1IhmHM-0002hB-HR@fencepost.gnu.org>
- In-Reply-To
- <Pine.LNX.4.64.0710161335260.25221@racer.site>
Show 11 quoted lines
> Date: Tue, 16 Oct 2007 13:39:12 +0100 (BST) > From: Johannes Schindelin <Johannes.Schindelin@gmx.de> > cc: Daniel Barkalow <barkalow@iabervon.org>, raa.lkml@gmail.com, ae@op5.se, > tsuna@lrde.epita.fr, git@vger.kernel.org > > > As I wrote in my other message, using native APIs improves performance > > by at least a factor of two. > > Somehow this does not appeal to my "portability is good" side. You know, > if we had to do such trickeries for every platform we support, we'd soon > be as big as Subversion *cough*.
You have to decide whether you care about performance enough to do that or not. If you do, then introducing file I/O abstractions at higher level than the normal ``use-library-functions'' method is not such a hard problem, and doesn't make the binary larger because each platform gets only its own backend. In practice, I have found that in most cases a few well-designed and strategically placed macros is all you need.
> For me, this is the most annoying part about programming Win32. They went > out of their way to make it incompatible with everything else, and as a > consequence it is a PITA to maintain crossplatform programs.
Portability is a two-way street. A program that wasn't designed to be portable will by definition be hard to port. To me, what's annoying is a program that was designed around a single-OS model of APIs.
Cross-platform programs are not that hard if you design them to be like that from the ground up. I'm working for a firm that does that for a living: we develop software that compiles and runs on Windows and Linux from the same source.
> Explorer often accesses files it should not lock. > On the machine I test msysGit on, this is the most common reason for a > test case to fail: it cannot delete the temporary directory, which > _should_ be unused. Indeed, a second after that, it _is_ unused.
One more reason not to launch Explorer, if you ask me ;-) But maybe you have valid reasons to do that. All I can say is that I never saw such problems, but then I don't usually run programs that rewrite files in a frenzy.