В linux одной из замечательных возможностей (в частности, для разработчиков) было монтировать папку и локально связывать ее с другой папкой в системе.
Это имело преимущество перед символическими ссылками, потому что такие инструменты, как Git, не распознавали его как узел другого типа, и вам не нужно было удалять исходное содержимое. Когда вы закончите, вы можете просто размонтировать и у вас останется исходное содержимое файловой системы.
Тем не менее, mount -bind
или mount.local
, кажется, не существует на Mac (по состоянию на OS X 10.10.2, Yosemite).
Как вы идете об этом?
$ sudo mount localhost:/Volumes/Aren/Movies /Users/me/Movies/
mount_nfs: can't mount /Volumes/Aren/Movies from localhost onto /Users/me/Movies: No such file or directory
cd
вышли, а затем вернулись, прежде чем использовать Git? Оболочки, как правило, работают с файловыми дескрипторами, которые связаны с inode, а не с полными путями строк - поэтому, если вы смонтируете и останетесь в «том же» каталоге, оболочка все равно будет работать с использованием основного каталога вместо смонтированного. Нет причин, по которым Git должен видеть что-либо как смонтированное - монтирование не работает так. Для всех намерений и целей это тот же тип файловой системы.Есть еще один вариант - bindfs . Он требует установки FUSE, но предоставляет альтернативу использованию NFS.
Возможно, вам придется скомпилировать из исходного кода, но я вижу, что он также доступен в MacPorts .
источник
brew install homebrew/fuse/bindfs
(Проверено на El Capitan; нет необходимости вsudo
ранееbindfs
для ориентированных на пользователя монтировок)