Git - how to handle symlinks

前端 未结 3 1333
情深已故
情深已故 2021-01-30 10:02

What is the correct way to handle symlinks in git?

I have the following structure:

Vendors
  Module A
  Module B
  Module C
App
 Code
   Modules
     Cor         


        
3条回答
  •  故里飘歌
    2021-01-30 10:50

    @Tuxdude Can't agree with you at all with "...then you're doing something wrong". As example, if you need to place a media folder onto a different drive on the webserver or even a NFS then you have to put it outside of the version control. So the contents inside the symlinked media folder won't be accessible through versioning as you explained. But that's a scenario where you have to do it like that. And it's really a pain in the b... My scenario is even more complex (i won't go into detail), what i am actually looking for is to add the subfolders of the symlinked folder into versioning but not its contents, but i need to have a option where i can ignore any changes of the subfolder type itself in git. As example, the basic structure:

    • app/media/bla
    • app/media/blubb

    I need those folders in the git versioning, without its contents.

    On the webserver (same versioning) those folders look like this (symlinks):

    • app/media/bla => somewhere entirely else
    • app/media/blubb => somewhere entirely else again

    The Dev's should have on their local environment just the original versioned structure as explained in the first step (no symlinks). But the webserver has symlinks to different NFS Systems.

    If anyone has an idea how to solve this i would really appreciate it, because i haven't found any solution to it yet.

    The only way i am doing it now is to have a builder that creates the correct / different structure for local environments and the servers and the media subfolders are currently ignored entirely by gitignore. But that can be sometimes tricky / hard to maintain.

提交回复
热议问题