1

Доброго времени всем! Вот такой вопрос возник... Главное, как собственно это делается, я понял, но не понял нюанс: вот есть, например, два каталога с исходниками, один с правлеными текстами, другой с оригиналами. Сделал я патч, но  вот переносимым он не будет. Как быть? Системы контроля версий использовать?

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

2 (07.07.2012 22:56:09 отредактировано Fat-Zer)

yars пишет:

. Сделал я патч, но  вот переносимым он не будет.

это почему?

yars пишет:

Системы контроля версий использовать?

ну в общем, да... это почти от всего панацея...

95% процентов проблем находятся между клавиатурой и стулом.

3

Fat-Zer пишет:

это почему?

Допустим, у нас есть такая структура каталогов:

/tmp/src1
/tmp/src2

Допустим, мы сделали изменения в одном из файлов в первом каталоге, натравили diff, получили патч. Если потом посмотреть в патч, то будет видно, что он получился привязанным к структуре каталогов. Вот это-то и послужило причиной появления темы. А без контроля версий не получится?

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

4 (07.07.2012 23:23:44 отредактировано Fat-Zer)

yars пишет:

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

не совсем понял, но похоже man patch, внимание на ключик -p
[added]

alexander@goblin /tmp $ cat src1/1.c
#include <stdio.h>

int main(int argc, char **argv) {
        return 0;
}
alexander@goblin /tmp $ cat src2/1.c
#include <stdio.h>

int main(int argc, char **argv) {
        printf("Hello world!");
        return 0;
}
alexander@goblin /tmp $ diff -rc src{1,2} | tee src1-2.patch
diff -rc src1/1.c src2/1.c
*** src1/1.c    2012-07-07 23:17:56.822846190 +0400
--- src2/1.c    2012-07-07 23:19:35.808852144 +0400
***************
*** 1,5 ****
--- 1,6 ----
  #include <stdio.h>

  int main(int argc, char **argv) {
+       printf("Hello world!");
        return 0;
  }
alexander@goblin /tmp $ cp -r src{1,3}
alexander@goblin /tmp $ cd src3/
alexander@goblin /tmp/src3 $ cat 1.c
#include <stdio.h>

int main(int argc, char **argv) {
        return 0;
}
alexander@goblin /tmp/src3 $ patch -rp1 <../src1-2.patch
patching file 1.c
alexander@goblin /tmp/src3 $ cat 1.c
#include <stdio.h>

int main(int argc, char **argv) {
        printf("Hello world!");
        return 0;
}
95% процентов проблем находятся между клавиатурой и стулом.