Jump to content

    

diff/patch

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

 

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

Share this post


Link to post
Share on other sites

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

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'

Share this post


Link to post
Share on other sites
Как обходной путь, можно

 

О! Спасибо, идея ясна!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this