mercurial: проверить, содержит ли ветвь набор изменений

max_allowed_packet=64M

Добавление этой строки в файл my.cnf решает мою проблему.

Это полезно, когда столбцы имеют большие значения, которые вызывают проблемы, вы можете найти объяснение здесь .

В Windows этот файл находится по адресу: «C: \ ProgramData \ MySQL \ MySQL Server 5.6»

В Linux (Ubuntu): / etc / mysql

13
задан resi 6 November 2009 в 11:46
поделиться

4 ответа

Как упоминалось в комментарии выше, я попробовал, вот что получилось:

http://bitbucket.org/resi/hg-contains/

6
ответ дан 1 December 2019 в 18:55
поделиться

Как насчет этого:

hg log -r changeset_id -b branchname

Это даст некоторый результат, если changeid_id включает изменения в ветке имя ветки , в противном случае выходные данные не будут возвращены.

Вы можете обернуть его в функцию bash, если хотите:

function contains() {
    if [ "$(hg log -r $1 -b $2)" == "" ]
    then
        echo no
    else
        echo yes
    fi
}

, которая делает это:

$ contains 0 default
yes
$ contains 0 other   
no
18
ответ дан 1 December 2019 в 18:55
поделиться

Преобразовать результаты debugancestor в «да» или «нет» должно быть довольно легко (но встроенного способа сделать это определенно нет; уже напишите сценарий!). Однако имейте в виду, что ответ может быть неправильным, если ветвь имеет более одной головной части.

(Написание расширения для добавления команды для этого тоже должно быть почти тривиальным, BTW.)

2
ответ дан 1 December 2019 в 18:55
поделиться

Вы всегда можете просто распечатать имя ветки для этой ревизии (оно будет пустым, если оно используется по умолчанию), а затем протестировать его с тем, что вы хотите (в bash или на каком-либо языке сценариев):

hg log --template '{branches}' -r <revision name/number>
0
ответ дан 1 December 2019 в 18:55
поделиться
Другие вопросы по тегам:

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