установка владельца файла с помощью Mercurial - PullRequest
3 голосов
/ 03 ноября 2010

Я использую Mercurial как часть моего рабочего процесса, и он работает хорошо.У меня есть одна проблема.Когда я выполняю обновление из своего центрального репозитория на свой веб-сервер Linux, я делаю это с пользователем «root».Это позволяет назначить владельца и группу «root» для любых новых или измененных файлов.

К сожалению, у меня возникают другие трудности с этим, поэтому мне всегда приходится проходить через все файлы и переустанавливать их для соответствующей группы и владельца (пользователь без полномочий root на веб-сервере).

Есть ли способ заставить Mercury сделать это автоматически, или у кого-то есть быстрый способ сделать это?Я использую оболочку и мне нужно набрать

chown -R username /home/username

Я пытаюсь сделать что-то похожее с chgrp.Все это кажется грязным, и я подозреваю, что есть более простой способ выполнить то, что мне нужно.Есть ли способ установить владельца и группу при извлечении из хранилища?

Ответы [ 2 ]

8 голосов
/ 03 ноября 2010

Вы должны тянуть, поскольку вы не как root, и тогда у вас не будет этой проблемы. Однако, если это невозможно по какой-то причине, вы всегда можете использовать хук обновления для исправления прав доступа к файлу. В файле .hg/hgrc вашего репозитория вы поместите:

[hooks]
update = chown -R username:usergroup /home/username

И эта команда будет автоматически запускаться после каждого hg update (или hg pull -u).

1 голос
/ 21 сентября 2014

Вы можете добавить несколько крючков, определив каждый из них отдельно

    [hooks]
    update.command1 = chown -R username:usergroup /home/username
    update.command2 = chown username2:usergroup2 /home/username/excludeme
...