[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Obscure error/warning/information message from git pull

From: Eli Zaretskii
Subject: Re: Obscure error/warning/information message from git pull
Date: Fri, 14 Nov 2014 23:35:35 +0200

> From: David Kastrup <address@hidden>
> Date: Fri, 14 Nov 2014 22:18:21 +0100
> Eli Zaretskii <address@hidden> writes:
> > I wasn't asking about Windows.  It is clear to me by reading the
> > script that using that on Windows is a bad idea, because symlinks are
> > (a) only supported since Vista, and (b) require to run the script "As
> > Administrator".  (And then there's a known caveat of removing the
> > symlinked directory that actually removes the target, if you aren't
> > careful to use rmdir.)
> It's things like this that make me wonder whether the system programmers
> at Microsoft are forbidden from using any other operating system.
> How would anyone with modest exposure to decent operating systems stand
> this kind of thing?
> As programmer I somewhat regularly encounter the situation "this
> behavior is far too inconsistent to make it worth documenting: let's
> rather work on fixing it first".  It usually does not even need the
> comparison to other systems to figure out the bad stuff from the good.
> Now I can understand that at some times commercial development results
> in decisions like "we won't invest work on implementing this".  But
> "we'll invest into creating a quite crippled and mostly useless version
> of the feature": where is the point in that?
> How does this work?  Somebody knowing the feature from other system pins
> down the salient points on a piece of scrap paper, someone else who
> never saw it and speaks a different language then writes the spec sheet,
> and somebody else who never saw the point in that feature implements
> those parts of that spec sheet that are easiest to do?

Not sure what you are steaming about.  If that's the fact that
creating symlinks requires privileges, then the rationale is that a
suitably pointed symlink can be used to circumvent security
permissions.  I'm not a security expert, so I don't know whether this
argument holds water.

If you are talking about the accidental removal, then using "DEL" (the
equivalent of the Unix 'rm') to remove a symlink to a directory is
actually a Unix-ism brought to Windows, because on Windows a symlink
to a directory is treated as a directory, and has the directory mode
bit set.  For any directory X, "DEL X" always meant "remove all files
in X" on Windows.  Therefore, doing that with a symlink to a directory
simply behaves like DEL always behaved.  The culprit is the Unix
semantics molded on the muscle memory of those who type such commands
on Windows.

> Something must be going seriously wrong somewhere, and it's not the
> first time that I cannot fathom just what.

A very pertinent observation in a discussion about Git.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]