【问题标题】:symlink breaking after git pullgit pull 后符号链接中断
【发布时间】:2019-06-01 12:44:11
【问题描述】:

我将 .vimrc 文件保存在 git 存储库中,因为我在多台计算机上使用它。我不相信有办法更改.vimrc 的默认位置,所以我将其保留在~/dotfile/.vimrc。我用ln ~/dotfiles/.vimrc ~/.vimrc 在它们之间创建了一个符号链接,然后我确认使用ls -i ~/.vimrc 显示12345 /Users/TheStrangeQuark/.vimrc,然后ls -i ~/dotfiles/vimrc 显示12345 /Users/TheStrangeQuark/dotfiles/.vimrc。

现在,我在~/dotfiles 中提取最新版本的.vimrc。现在,符号链接已损坏,我可以通过查看来自 ls -i 的两个文件的不同 inode 编号来确认这一点。我还可以看到~/.vimrc 不是我的git pull 的更新版本。

有没有办法让我的git pull 不会破坏这个符号链接?

如果有帮助,我正在运行 MacOS Majave。

【问题讨论】:

  • 这不是符号链接。试试ln -s。

标签: git vim symlink


【解决方案1】:

如“Git and hard links”中所述,硬链接不能在 git 中表示,至少在没有第三方工具或 post-merge hook 的情况下不能。

这与软链接 (ln -s) 不同,后者是 stored as a file pointing to the destination。

另见“What is the difference between a hard link and a symbolic link?”。

【讨论】:

    猜你喜欢
    • 2019-03-03
    • 2011-08-20
    • 2011-06-03
    • 2013-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    相关资源
    最近更新 更多