A simple command-line utility that implements directory hardlinks on Mac OSX
to link: hln source destination
to unlink: hln -u destination
I was trying to patch a third-party library and make the files available in our code directory without having to copy the files every time I patch it.
I got the idea from the stackoverflow question here and decided to create a lib out if it that anybody can use.
The binary is named hln
due to a naming conflict. It's also just easier to type and does not conflict with any other system I have checked.
- You will need xCode command line tools installed to use
make
command
After installing homebrew, you can simply issue this command in your terminal and hardlink will automatically install with:
brew install hardlink-osx
git clone https://github.com/selkhateeb/hardlink.git
cd hardlink
make
[sudo] make install
Note: If you get the error directory /usr/local/bin does not exist
, just copy hardlink app into /usr/bin
instead.
To create a hard link:
hln source destination
To remove the link:
hln -u destination
Hardlink can not be created under the same directory root.
If you try to hln
source directory to target directory under the same root you will get an error.
operation not permitted
to avoid that you should create additonal directory level
- /directory_root/
|- /source_directory
|- /parent_directory/
|- target_directory