如何通过git管理link源的文件?

How to manage files of link source by git?

想要

我想通过 git 管理 nvim 配置。

问题

Link 被 git checkout . 命令中断。预期行为是用远程存储库源覆盖我的 nvim 配置。但实际行为是用远程存储库源覆盖 link。

代码

我试过下面的代码。

# clone
cd ~/Documents/GitHub/
git clone https://github.com/ShortArrow/my-nvim-config
cd my-nvim-config

# delete "./nvim" for making link
rm -r ./nvim
# making link
ln -s ~/.config/nvim/ ./nvim

# if you need, "cp ~/.config/nvim/ ~/.config/nvim-backup"
# I wanna rewrite nvim config by git with this command
git checkout .

已经尝试过

尝试1

sudo git config --system --unset core.symlinks
git config --local core.symlinks false

尝试2

$> sudo ln -d ~/.config/nvim/ ./nvim
ln: failed to create hard link './nvim' => '/home/who/.config/nvim/': Operation not permitted

在 Windows

此 github 存储库与 Windows 上的 Junction link 配合良好。

A softlink 只是一个包含目标路径的文件(还有一个权限标志告诉 OS 将其视为 link),并且 Git 正在这样对待它。

不是通过将存储库文件更改为配置文件的 link 来更改存储库中的内容,link 另一种方式配置文件 link 进入存储库