Абсолютно ручное Подвижное слияние

Вам просто нужно использовать конструкцию select(), чтобы удалить объект, содержащий поле .name, из структуры JSON.

if [[ $(jq '.peerDependencies | length' package.json) = 0 ]]; then
    jq '.sections |= map(select(.name != "Prerequisite"))' docs.json      
fi

Затем можно использовать > newSection.json, чтобы перенаправить измененное содержимое docs.json в новый файл.

18
задан sholsinger 18 January 2012 в 17:17
поделиться

3 ответа

Поворот "предварительное слияние" прочь в Вашей конфигурации слияния. Затем все рассчитывает как конфликт, и можно выбрать "оставленный" или "прямо" для каждого изменения файла.

[merge-tools]
mymergetool.premerge = False

от MergeToolConfiguration на Подвижной Wiki.

20
ответ дан 30 November 2019 в 07:34
поделиться

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

Если Вы хотите объединиться в другом "направлении", можно измениться, какое ответвление находится в рабочем каталоге путем проверки определенного пересмотра:

hg update -r [rev]

Для наблюдения, какие головы Вы имеете в своем репозитории, выполняет следующую команду:

hg heads

С другой стороны, если Вы используете fetch можно использовать --switch-parent опция объединиться в другом направлении:

hg fetch --switch-parent

Вы не можете изменить направление слияния на основе файла файлом как Подвижные работы с changesets, которые влияют на целый репозиторий не путем отслеживания изменений на отдельных файлах как CVS.

2
ответ дан 30 November 2019 в 07:34
поделиться

Отредактируйте файл конфигурации следующим образом:

[ui]
merge = kdiff3

[merge-tools]
kdiff3.premerge = false
kdiff3.args=--L1 base --L2 local --L3 other $base $local $other -o $output

По умолчанию он помещает аргумент - auto в kdiff3, поэтому kdiff3 автоматически объединяется.

12
ответ дан 30 November 2019 в 07:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: