Запуск startx
имеет смысл, только если вы находитесь перед компьютером. Тестирование на владение консолью - один из способов определить это. Как вы выяснили, его можно обмануть, работая в сеансе screen
. В таком случае X для вас.
Во-первых, вы должны использовать абсолютный путь для части драйвера в соответствии с инструкциями в https: // github.com/ralfth/pom-merge-driver (который, я полагаю, является либо тем, что вы используете, либо его форком) - поэтому используйте /usr/bin/mergepom.py% O% A% B
для драйвера в вашем случае.
Во-вторых, общесистемный файл атрибутов git, вероятно, должен находиться в $ HOME / .config / git / attributes согласно https://stackoverflow.com/a/28027656
В-третьих, это более философский момент - автоматическое слияние файлов с использованием Jenkins обычно является плохой идеей; вы можете подумать об изменении рабочего процесса, чтобы пользователи выполняли слияние, а Дженкинс оценивал их слияние. Почему ваша работа Jenkins выполняет слияние (автоматическое слияние веток выпуска с основной веткой)? Может или должен ли пользователь сделать это вместо этого?
Ах, да, расположение уже было /usr/bin/mergepom.py %O %A %B, скопировал оригинальный путь из локального env.
Посмотрел, но в $HOME/.config ничего нет. Нашел несколько хуков в /usr/share/git-core/contrib/hooks. Протестирую это как-нибудь.
Ну, конфликты слияния по-прежнему будут решаться вручную, но когда есть прямое слияние, Jenkins значительно сократит время автоматического слияния, которое в противном случае было бы потрачено на просмотр pom.xml вручную. Проект, в котором я работаю, имеет около 75 pom.xml-s.