Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Pull fails in symlinked submodule on Windows #247

Closed
euclio opened this issue Sep 15, 2014 · 11 comments
Closed

Pull fails in symlinked submodule on Windows #247

euclio opened this issue Sep 15, 2014 · 11 comments

Comments

@euclio
Copy link

euclio commented Sep 15, 2014

Steps to reproduce:

  1. Open Administrator command prompt.

    mkdir repo
    cd repo
    git init
    mkdir dir
    cd dir
    git submodule add <some arbitrary git repo> submodule
    cd ..
    mklink /D link dir\submodule
    cd link
    git pull origin master
    
  2. Expected behavior: The submodule is updated to origin/master.

  3. Actual behavior: Command fails, outputs

    fatal: Not a git repository: ../../.git/modules/dir/submodule
    
@t-b
Copy link

t-b commented Sep 15, 2014

What is your git version and windows version?
Have you enabled/disabled core.symlinks?

Symlinks are in general problematic with our git.

@frogonwheels
Copy link

I thought I had symlinks largely working for git 2, but I've had some flaws in my implementation pointed out to me, so I need to do a bit of reworking. Meanwhile symlinks and msysgit don't work at all. Msys has no support for it. (It's in msys2)

@euclio
Copy link
Author

euclio commented Sep 17, 2014

git version 1.9.4.msysgit.0
OS Name:                   Microsoft Windows 8.1 Pro
OS Version:                6.3.9600 N/A Build 9600

I have not enabled or disabled core.symlinks.

@frogonwheels
Copy link

When I say "I thought I had", this means that I had some things that were fundamentally bad, and so the patches have been excluded. I'm trying to find time to follow up on the recommendations and get it fixed. At least I have the tests working though; that should make it a whole bunch easier this time. What you are trying to do won't work without the symlink changes. As with all things msysgit, the more people who actually dig in and do work, the easier it gets.

@paquettej
Copy link

I am seeing a similar issue with symlinks in 1.9.0.msysgit.0. I have a directory within my source tree that is a symlink (mklink /d) to a folder outside the tree. I was able to do an initial commit without issue. Now that I have modified files within that folder, git status shows them as deleted.

@dscho
Copy link
Member

dscho commented Oct 2, 2014

@snowmoonsoftware let's follow best practices and test against the latest release, yes?

@paquettej
Copy link

@dscho Confirmed the issue exists using git version 1.9.4.msysgit.2

@kmashint
Copy link

+1 on any progress to have symlinks working with git-Windows, although this is a dependency on MSYS as well.

@dscho I'll see if I can get time to write code rather than comments ;-)

@dscho
Copy link
Member

dscho commented Nov 18, 2014

+1 on any progress to have symlinks working with git-Windows, although this is a dependency on MSYS as well.

@kmashint unfortunately, votes do not matter much in this project; contributions matter a lot, though.

@frogonwheels
Copy link

@kmashint - Look at my work and the final criticisms of it. The changes to all the tests are relevant, mostly until msys supports symlinks. There's a lot there that is still correct, and it's just a matter of redoing some of it (like the Stat - which works on the whole path instead of just the last item).

@dandv dandv mentioned this issue Apr 27, 2015
@dscho
Copy link
Member

dscho commented Aug 25, 2015

Symlink support was finally merged into Git for Windows 2.x; Please note that you will have to activate the support specifically using core.symlinks:

git clone -c core.symlinks=true <URL>

@dscho dscho closed this as completed Aug 25, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants