Принудительное принятие изменений в Git


0

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


Мы говорим об общих файлах в (Git) каталоге проекта? Или просто какой-то каталог на сервере? Может быть, на долю NFS? Пожалуйста, опишите ваш вариант использования.
mtak

В общем каталоге - я обновил вопрос, чтобы отразить его.
Левша Дж. Балог

Просто мозговой штурм, но как ядро ​​будет реализовывать что-то подобное? Предоставить доступ RW, но записать файл на диск только в том случае, если кто-то сделал коммит Git (какой git не подхватит, потому что файл на диске еще не изменился)? Пользователи всегда смогут изменить файл и затем выйти из системы, даже если git запросит у них, например, сообщение о коммите. И что произойдет, если у кого-то не будет установлен ключ ssh, но есть доступ на запись в файл? Вы могли бы сделать оболочку своего рода, чтобы люди не забывали фиксировать, но строгое соблюдение этого кажется невозможным.
mtak

Именно так. Я надеялся, что ты этого не скажешь. Это как раз моя проблема, и я пытаюсь найти оригинальный способ ее обойти. Я могу гарантировать, что тот, кто изменяет файл, имеет надлежащие учетные данные Git, но проблема заключается в том, чтобы заставить его выполнить коммит.
Левша Дж. Балог

1
Похоже, ты неправильно используешь мерзавца. Вам нужно нечто вроде файловой системы только для добавления. Если вы настаиваете на том, чтобы придерживаться git, сделайте общую папку доступным только для чтения, и пусть пользователи нажимают на нее.
Гроностай

Ответы:


1

Самый простой способ обеспечить это - отменить права на запись в этот каталог. Пусть пользователи внесут изменения в свой собственный клон, отправят в центральный репозиторий и полагаются на сценарии ловушек после получения, чтобы обновить «главный» каталог.


Благодарю. Определенно стоит воздержаться. Можете ли вы увидеть какой-нибудь способ избежать местных клонов?
Левша Дж. Балог

1
Нет. Пока люди могут редактировать «живые» файлы напрямую, они могут редактировать файлы напрямую - вы не можете заставить компьютер заключить их в тюрьму, пока они не выполнят git-изменения или что-то еще.
Гравитация
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.