Jestem w folderze głównym git, którego ścieżka bezwzględna to /path/project/
. Struktura folderów jest:Git rm działa na ścieżce względnej do dowiązania symbolicznego, ale nie ścieżce bezwzględnej
/path/project
---- libs/alib (actual library folder)
---- exec/alib_link (symbolic link to the actual alib folder)
mogę usunąć dowiązania symbolicznego z git rm
za pomocą ścieżki względnej: git rm exec/alib_link
Ale za pomocą ścieżki bezwzględnej powoduje git aby spróbować usunąć mój oryginalny folder, zamiast
git rm /path/project/alib_link
fatal: not removing /path/project/libs/alib recursively without -r
Jak czy mogę zmusić gita do usunięcia dowiązania symbolicznego za pomocą bezwzględnej ścieżki, bez powodowania, że spróbuje usunąć mój oryginalny katalog?
+10 za wskazanie, że aliasy git korzystać z repozytorium korzeń jako katalogu roboczego. Poczekam trochę, aby sprawdzić, czy pojawią się lepsze opcje, ale dziękuję za pomoc. –
@ LimH .: Brak problemów. Warto zauważyć, że tylko aliasy git, które robią powłoki, używają repozytorium jako katalogu roboczego. Jeśli utworzysz alias taki jak 'rmr = rm -r', wówczas użyje on bieżącego katalogu. Jako dalszą obserwację - odkryłem w trakcie zabawy, że względna ścieżka od katalogu głównego repozytorium do oryginalnego katalogu roboczego zostanie zapisana w zmiennej środowiskowej GIT_PREFIX, jeśli będzie potrzebna. –