GIT и HardLink в Linux - PullRequest
       6

GIT и HardLink в Linux

4 голосов
/ 29 декабря 2011

У меня есть git-репо test , файл (файл конфигурации zsh) и

ln ~/.zshrc test/zshrc

затем я изменил файл .zshrc, файл zshrc в git repo не изменился, разве git не может работать с hardlink?

если так, как я могу использовать git для управления этими точечными файлами? Любое предложение

Ответы [ 3 ]

4 голосов
/ 29 декабря 2011

Вы не можете создавать жесткие ссылки вне git-репозитория. У вас есть несколько вариантов:

  • Сделать ~/.zshrc символической ссылкой на my-home-git-checkout/zshrc.
  • Храните git checkout в вашем домашнем каталоге.
  • Скопируйте файл из вашей git checkout в ваш домашний каталог, возможно, автоматически после фиксации или извлечения.

¹ Да, ладно, обман: вы не можете оставить .

2 голосов
/ 31 декабря 2011

Попробуйте добавить следующий скрипт в /path/to/repo/.git/hooks/post-checkout (этот файл должен быть исполняемым):

#!/bin/sh
/bin/ln -sf /path/to/repo/zshrc $HOME/.zshrc
2 голосов
/ 29 декабря 2011

Git всегда предполагает, что он является единственным владельцем файлового индекса.Так что git checkout просто ломает все жесткие ссылки.

...