Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Изменение времени модификации файлов при чекауте.
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
Почему GIT (v1.8, windows) изменяет время модификации файлов?
т.е. когда я переключаюсь на другую ветку, у всех извлеченных файлов время модификации становится равным моменту, когда был сделан checkout. Хотя реально файл не был изменен. Это доставляет проблемы при синхронизации файлзиллой, - после смены ветки на сервер качаются все файлы проекта (сверяется время изменения файлов).
Можно как-то пофиксить этот момент?
----- Чем больше узнаю, тем больше я не знаю.
EuGen
Отправлено: 24 Апреля, 2013 - 13:56:11
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Насколько я знаю, это является следствием того, что git является DVCS (Distributed VCS) - и, значит, репозиторий не централизован. Поэтому стандартными способами в git не удастся иметь датой модификации дату коммита (то есть реального изменения).
I'm sorry. If you don't see how it's WRONG to seta datestamp back to something that will make a simple "make" miscompile your source tree, I don't know what defintiion of "wrong" you are talking about.
It's WRONG.
It's STUPID.
And it's totally INFEASIBLE to implement.
Там же - краткие рекомендации - создать скрипт в $GIT_DIR/.git/hooks/post-checkout :
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.