Перейти к содержанию
    

diff/patch

Возник вопрос - когда я добавляю в директорий с проектом обычный исходник, то проблем никаких. Файл создается. А вот если я добавляю скрипт (который вызывается из Makefile), то он добавляется как обычный, не исполняемый файл. Можно ли как-то заставить diff делать такой патч, чтобы в нем сохранялась информация о mode?

 

PS. Я генерирую патчи "diff -uNr a/ b/"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Видимо никак :(

http://linux.die.net/man/1/patch

Caveats Context diffs cannot reliably represent the creation or deletion of empty files, empty directories, or special files such as symbolic links. Nor can they represent changes to file metadata like ownership, permissions, or whether one file is a hard link to another. If changes like these are also required, separate instructions (e.g. a shell script) to accomplish them should accompany the patch.

 

Как обходной путь, можно скрипты вызывать не './foo.sh' а '$(SHELL) ./foo.sh'

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...