2017-01-10 4 views
0

Я работаю над веткой, которая вообще не касается какого-либо исходного кода, она просто вносит вклад в документацию по проекту. Таким образом, нет смысла тратить циклы процессора моего провайдера и забивать очередь. Я знаю, что могу сделать это, добавив [skip ci] к сообщению о фиксации, но я всегда забываю сделать это в момент фиксации. Спустя некоторое время появляется сообщение от ботаника CI, и я ударяю себя за то, что забыли еще раз.Как автоматизировать добавление [skip ci] для фиксации сообщений в какой-либо ветке в git

Несомненно, должен быть лучший способ!

Я думаю об использовании крюка Git для добавления [skip ci] к любому сообщению фиксации в этой ветке.

Мои вопросы:

  1. Есть ли лучший путь вперед?
  2. Несомненно, я не первый, кто захочет это сделать. Я не хочу изобретать колесо. Есть ли какой-то уровень техники?
  3. Если ответы на предыдущие вопросы «нет», есть ли у вас какие-либо советы по написанию фактического крючка?

Я использую Travis CI.

+0

Кто ваш поставщик услуг CI? (И какое программное обеспечение они запускают, если это неочевидно?) –

+0

@ScottWeldon моего провайдера CI в этом случае является Travis, хотя я не вижу, как это имеет значение, так как '[skip ci]' должен быть добавлено в сообщение фиксации, то есть * до того, как будет задействован поставщик CI, и это относится ко всем провайдерам, которые поддерживают '[skip ci]'. – jacg

+0

Мой ответ должен объяснить, почему я спросил о провайдере. –

ответ

2

Есть способы автоматизировать добавление [skip ci] к вашим сообщениям фиксации (см., Например, this answer), но я не думаю, что это лучшее решение здесь. Вы сказали:

Я работаю над веткой, которая вообще не касается какого-либо исходного кода, она просто вносит вклад в документацию проекта.

Таким образом, на самом деле нет необходимости никогда триггера любых основывается на таких отраслях.

Это легко для specify which branches to build or not build, но это необходимо заранее настроить, и вы должны знать, какие ветви блокировать.

Решение этих двух вопросов: everyone's favorite tool, regular expressions. Добавить что-то вроде этого, чтобы ваш .travis.yml:

branches: 
    except: 
    - /^feature\/docs\/.*$/ 

(Смотрите также the Travis CI docs.)

Затем, когда вы хотите, чтобы написать документацию, создать ветвь, которая начинается с feature/docs/ и он не будет построен Travis CI ,

+0

Любые предложения о том, как обрабатывать запросы на запросы на таких ветвях в репозиториях, которые были настроены на необходимость проверки CI? Необходимая проверка ожидает сборки, которая никогда не состоится. – jacg

+0

@jacg Единственная идея, которую я имею в настоящее время, - либо переименовать ветвь, либо создать дублируемую ветвь, указывающую на одну и ту же фиксацию. Проверки статуса привязаны к фиксации, а не к ветвям, так что любой из них должен работать. –

+1

Хмм, я думаю, что мой последний комментарий был ложным сигналом: PRs, которые сливаются в master * будут * быть построены (поскольку мы больше не на ветке docs), в то время как запросы на запросы в ветку docs не нужно строить , потому что вам не потребуется строить на этой ветке. – jacg

 Смежные вопросы

  • Нет связанных вопросов^_^