Hello David,
Le 09/08/2017 à 10:35, David Macek a écrit :
On 9. 8. 2017 0:15, Vincent Belaïche wrote:
Hello,
I am coming back to bug https://sourceforge.net/p/msys2/tickets/41/.
In the discussion of this problem it was said that
- msys2 does not used symlinks by default, because MSW applications do
not understand the symlinks
- when msys2 is configured to use symlinks, these are ``cygwin
symlinks'' and you need to operate with administrator rights.
You're misquoting the discussion. It should be:
MSYS2 doesn't create Cygwin-y symlinks (except special circumstances),
although it does understand them. It copies the target instead,
because "MSW" programs don't understand Cygwin-y symlinks. It can be
configured to create native NTFS symlinks, but that has other
limitations<https://github.com/git-for-windows/git/wiki/Symbolic-Links>.
Sorry for misquoting. I must admit that I don't know the difference
between a cygwin-y symlink and a NTFS native symlinks. And I just
presume that MS implementation of symlinks is a superset of NTFS native
symlinks.
The URL that you give is interesting in this that it explains that MS
symlinks can be created by non-administrators provided that they are
given some corresponding priviledge.
Anyway, the project which I am interested in is using SVN, not GIT, and
to my knowledge SVN MSW clients can't be configured to follow symlinks
at the moment (sigh) whatever the user priviledges. Since there are only
a few of them, it is easy to have a work around by having the makefile
create the ``pseudo-symlink'' by ``ln -s'' when applicable. I say
pseudo-symlinks because there are'nt real symlinks, just copies, and
this does not really matter to me because this is not a big about of
data and makefile can keep pseudo-symlink synchronized with its target.
What is more of a nuisance is the following ``ln -s'' does make the
pseudo-symlinks correctly for me in some circumstances. If I run the
following script:
mkdir foo
cd foo
echo "Hello world!" > bar
mkdir hello
echo "Hello again!" > hello/bar2
mkdir gnats
cd gnats
ln -s ../* .
I should have a pseudo-symlinks bar, and hello in foo/gnats that are a
copies of file foo/bar and directort foo/hello. However, it does not
work, I get the following:
ln: impossible de créer le lien symbolique './bar': No such file or
directory
ln: impossible de créer le lien symbolique './gnats': No such file or
directory
ln: impossible de créer le lien symbolique './hello': No such file or
directory
if now I try to make it a little smarter by making the pseudo-symlinks
one by one, ie I replace 'ln -s ../* .' by :
for w in $(ls .. | awk '!/^gnats$/{print}'); do
ln -s ../$w $w;
done
I get the following:
ln: impossible de créer le lien symbolique 'bar': No such file or directory
ln: impossible de créer le lien symbolique 'hello': No such file or
directory
I seems that something go broken in my ln.exe. Is there anyway to have
pacman repair it ?
Vincent.
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel
antivirus Avast.
https://www.avast.com/antivirus
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Msys2-users mailing list
Msys2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/msys2-users