Как запустить git diff-tree против master ветки в jenkins?

Ваш массив огромен.

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


Если вам абсолютно необходим огромный массив, вы можете попытаться выделить его динамически (используя malloc(...)), но тогда вы рискуете утечки памяти. Не забывайте освобождать память.

Преимущество malloc заключается в том, что он пытается выделить память в куче вместо стека (поэтому вы не получите переполнение стека).

Вы можете проверить значение, возвращаемое malloc, чтобы увидеть, было ли выделение успешным или неудачным. Если это не удается, просто попробуйте malloc меньшего массива.


Другим вариантом будет использование другой структуры данных, которая может быть изменена «на лету» (например, связанный список). Wether этот вариант хорош, зависит от того, что вы собираетесь делать с данными.

Еще одним вариантом было бы хранить вещи в файле, потоковые данные «на лету». Этот подход является самым медленным.

Если вы идете на хранение на жесткий диск, вы можете также использовать существующую библиотеку (для баз данных)

1
задан gurpsone 18 January 2019 в 16:32
поделиться

1 ответ

Это должно означать, что в рабочей области Jenkins нет ветки master.
Это типично для клонированного репо, чья ветка по умолчанию равна , а не master.

Обязательно сделайте предварительный шаг в jenkins:

git checkout -b master origin/master

Затем попробуйте еще раз ваш дифференциал.

0
ответ дан VonC 18 January 2019 в 16:32
поделиться
Другие вопросы по тегам:

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