So, you redefined some redmine views in your plugins and want to merge these views with updated versions from a new redmine release.
You've got three versions of each view: one in your plugin, one in updated redmine directory, and one in current redmine directory, which is also a common ancestor of the perevious two. Therefore you can do three-way merge.
Invocation:
[teksisto@localhost vhod]$ tree -L 3
.
├── mergeviews.sh
├── redmine-2.3.1
│ ├── <...>
│ └── plugins
│ ├── redmine_some_plugin
│ └── redmine_other_plugin
└── redmine-3.3.0
[teksisto@localhost]$ ./mergeviews.sh --old=redmine-2.3.1 --new=redmine-3.3.0
./redmine-2.3.1/plugins/redmine_some_plugin/app/views/repositories/_revisions.html.erb:1: (success)
./redmine-2.3.1/plugins/redmine_other_plugin/app/views/projects/settings/_members.html.erb:1: (conflict 11)
Following plugins were affected:
- redmine_some_plugin
- redmine_other_plugin
Merge stats:
- successful 1
- conflicts 11
[teksisto@localhost]$ ./mergeviews.sh --reset=redmine-2.3.1
HEAD now at d0eb76d commit message
HEAD now at a76fd22 another commit message
- for/find loop works only with paths without spaces, rewrite using while/find
- absolute paths do not work
- merge inside proper redmine git repository, by checking out revision from branch
- don't use symbolic links inside
--old
and--new
directories,find
will ignore them