git clone git://git.appcode.pw/file-merge.git
Специальные комментарии
- //#UPDATE — помечается начало обновления
- //#UPDATEEND — помечается завершение обновления
- //#ADD — помечается начало добавления
- //#ADDEND — помечается завершение добавления
Пример обновления данных
Оригинал:
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
idProperty: 'id'
...
В оригинальном файле нам требуется убрать свойство idProperty. Наличие пустой строки обязательно, т. к. таким образом сообщается, сколько строк нужно обновить.
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
//#UPDATE
//#UPDATEEND
...
В оригинальном файле нам требуется обновить свойство idProperty
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
//#UPDATE
idProperty: 'LINK'
//#UPDATEEND
...
Пример добавления данных
Оригинал:
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
idProperty: 'id'
...
Требуется добавить еще одно свойство.
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
idProperty: 'id'
//#ADD
displayProperty: 'table_name',
//#ADDEND
...
Или добавить новую функцию
validators: {
user_id: 'presence',
roles_id: 'presence',
table_name: { type: 'length', max: 255 }
}
//#ADD
, fio: function () { // '''тут запятая должна находиться именно здесь'''
}
//#ADDEND
});
Принудительная генерация и запрет
Для принудительной перегенерации файла требуется указать в начале файла
//#overwrite
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
idProperty: 'id'
...
Для отмены перезатирания данных указывать в начале файла
//#not overwrite
Ext.define('PN.model.accesses', {
extend: 'Ext.data.Model',
idProperty: 'id'
...