#git #macos #dropbox
Есть ~/work/project и ~/Dropbox/, в котором project → ~/work/project. В самом ~/work/project папка .git вынесена в ~/work/project-git Так вот, как без создания симлинка можно по прежнему вызывать git в ~/work/project? Симлинк использовать нельзя так как дропбокс скопирует все содержимое. Может, ему можно как-то сказать не делать этого?
Ответы
Ответ 1
адресоваться к каталогу с хранилищем (если он находится не в каталоге .git в корне проекта) можно разными способами. в вашем случае подойдёт адресация с помощью файла .git, описанная, например, в этом ответе. покажу на примере: рабочую копию (workdir) вы хотите держать в каталоге /путь/к/проекту а само хранилище (gitdir) хотите держать в каталоге /путь/к/хранилищу сделайте текущим каталог /путь/к/проекту: $ cd /путь/к/проекту инициализируйте хранилище: для программы git версии 1.7.5 или выше: $ git --separate-git-dir /путь/к/хранилищу init в каталоге /путь/к/хранилищу будет создано полноценное хранилище со всеми необходимыми файлами/каталогами: branches, config, description и т.д., а в текущем каталоге будет создан файл .git с «отсылкой» к месторасположению хранилища, такого содержания: gitdir: /путь/к/хранилищу для программы git версии ниже 1.7.5 надо будет проделать описанное в полу-ручном режиме: $ git --git-dir=/путь/к/хранилищу --work-tree=. init $ echo "gitdir: /путь/к/хранилищу" > .git для случая, если хранилище уже существует в каталоге .git в корне вашего проекта, потребуются такие действия: сделайте текущим каталог /путь/к/проекту $ cd /путь/к/проекту установите явно в конфигурации хранилища путь к рабочему каталогу: $ git config core.worktree /путь/к/проекту переместите каталог .git в нужное место с нужным именем (целевой каталог /путь/к/хранилищу не должен существовать в этот момент, иначе файлы/каталоги хранилища попадут в /путь/к/хранилищу/.git): $ mv .git /путь/к/хранилищу создайте файл .git в текущем каталоге: $ echo "gitdir: /путь/к/хранилищу" > .git
Комментариев нет:
Отправить комментарий