hardlink

by selkhateeb

selkhateeb / hardlink

a simple command-line utility that implements hardlinks on Mac OsX

454 Stars 49 Forks Last release: Not found 44 Commits 2 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

hardlink-osx

A simple command-line utility that implements directory hardlinks on Mac OSX

to link:

hln source destination
to unlink:
hln -u destination

Motivation

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.

A note about the the
hln
binary name:

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.

Requirements

  • You will need xCode command line tools installed to use
    make
    command

Installation

Using Homebrew

After installing homebrew, you can simply issue this command in your terminal and hardlink will automatically install with:

  • brew install hardlink-osx

Manually compiling

  • 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.

Usage

To create a hard link: -

hln source destination

To remove the link: -

hln -u destination

Limitations

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

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.