Most git executables are hard links to git.exe?

L A Walsh cygwin@tlinx.org
Sun Jul 30 00:32:51 GMT 2023


On 2023/07/22 10:35, Jim Garrison via Cygwin wrote:
> On 07/22/23 10:33, Adam Dinwoodie wrote:
>   
>> On Fri, 21 Jul 2023 at 22:54, Jim Garrison via Cygwin wrote:
>>     
>>> On 07/21/23 14:52, Brian Inglis wrote:
>>>       
>>>> On 2023-07-21 14:59, Jim Garrison via Cygwin wrote:
>>>>         
>>>>> Git comes with over 100 executables, mostly in /usr/libexec/git-core,
>>>>> that all appear to be *hard* links to /bin/git, in both Cygwin and
>>>>> Windows. The Windows fsutil command shows they're all hard linked:
>>>>>           
>>> [snip]
>>>       
>>>>> I'm curious to know if there's a specific reason for this implementation
>>>>> that would make it the choice over symbolic links.
>>>>>           
The hardlink implementation on windows is very similar to the
implementation on linux.  I'm pretty sure that utils that want to save
on space will look at the inode-number and notice that the hardlinked files
all have the same inode-number (windows has a similar concept though it is
called something else).

On linux, utils that are ignorant of inode numbers, will see hardlinked 
files
as separate files -- just as windows does.

The symlink files will break if their targets move (same on lin+win).




More information about the Cygwin mailing list