git-bashでlnを使っても正しいシンボリックリンクを貼れないときの対処法
何が起きたか Windows 環境に置いて git-bash を使用している. その中で, lnコマンドを使用してシンボリックリンクを貼ろうとしたがリンクが指し示す場所が指定した場所ではなかった。 私は~/dotfiles/.config/nvim/へのシンボリックリンクを~/.config/nvimに貼りたかった。 以下に存在するリンク元, リンク先, ユーザ名は例. # 下記操作を行った。 $ cd ~/dotfiles $ ln -sf ./.config/nvim/ ~/.config/nvim しかし, 作成したリンクは下記のようになった。 $ ls -la ~/.config lrwxrwxrwx 1 user 0000 0000 11月 11日 11:11 nvim -> /c/Users/user/.config/.config/nvim 解決法 lnコマンドに対して渡していたリンク元のパスを相対パスから絶対パスに変更した。 # 下記のコマンドに変更した. $ ln -sf ~/dotfiles/.config/nvim/ ~/.config/nvim # 以下は結果 $ ls -la ~/.config lrwxrwxrwx 1 user 0000 0000 11月 11日 11:11 nvim -> /c/Users/user/dotfiles/.config/nvim 原因は調べていないため不明だが, 絶対パスを渡すようにしましょう。