Hello Lukas,
> Starting from strange phenomens with git-annex I found that there are 3
> git.exe installed:
>
> bin\git.exe
> cmd\git.exe
> libexec\git-core\git.exe
>
> Why? And what do they do? Which one is the correct one?
cmd/git.exe is a wrapper that sets up some environment and calls the
"real one", i.e. bin/git.exe
When calling git from a Windows program, use cmd/git.exe; this is also the
dir that should go to Windows path.
bin/git.exe should be called only from bash command prompt - its startup
code sets things up.
About the third one... There are actually only two files on your disk.
But the "real git" is linked under more than hundred names (git-commit.exe,
git-log.exe, etc.) Two of the names are git.exe (in different directories).
This is just a technical issue (these used to be individual executables,
but have been integrated into one).
Just ignore libexec/git-core, it's git's internal issue.
Stepan