Как мне использовать Git для управления файлами, принадлежащими пользователю root? - PullRequest
0 голосов
/ 02 ноября 2018

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

Между тем, другие операции с git (например, принудительное внесение изменений в главный репозиторий на Github) необходимо запускать без sudo, поскольку в противном случае они выполняются без надлежащего доступа к ключам SSH из моей учетной записи пользователя.

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

Какая подходящая конфигурация позволила бы устранить эти противоречия между противоречивой необходимостью как RUN, так и NOT RUN с sudo? Как я могу добиться этой конфигурации?

Например ...

a) должен ли я запускать git WITH sudo последовательно, при этом настраивая его специально для доступа к моим SSH-ключам учетной записи пользователя независимо от того, работает ли пользователь. б) должен ли я запускать git БЕЗ sudo последовательно, при этом настраивая его на использование sudo, когда ему нужно каким-либо образом писать или получать доступ к файлам, принадлежащим корню.

ФОН

Я бы хотел версии файлов, используемых для настройки моего рабочего стола Ubuntu. Это означает, что когда я пытаюсь повторить ту же конфигурацию на будущем настольном компьютере (или на том же настольном компьютере после перестройки), легко увидеть, какие строки были изменены, и даже выполнить поиск изменений в конфигурационном файле по «описанию функции».

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

1 Ответ

0 голосов
/ 02 ноября 2018

Я всегда отключаю разрешения для файла отслеживания git на git config core.fileMode false.

Я думаю, что это нормально - управлять правами доступа к файлам в рабочей среде (разработка / производство), а не в git.

...