Может ли Phabricator игнорировать Ref Txxx в коммитах для конкретной ветви?
Мы используем Ref Txxx
синтаксис в нашем git связывает их с задачами фабрикатора. Хорошая особенность, именно то, что мы хотим, однако:
Во время разработки и перебазирования в конкретной ветке это создает много шума в истории фабрикатора, т.е. многие коммиты отображаются как зачеркнутые после перебазирования и т. Д.
Можно ли этого избежать? Конечно, я мог бы использовать манекен Ref
а затем заменить те, когда я думаю, что я закончил. Но могу ли я исключить филиал из-под контроля фабрикатора или есть другой умный способ справиться с этим?
1 ответ
Да, вы можете заставить фабрикатор просто наблюдать за определенными и тем самым неявно игнорировать другие ветви.
Идти к Repositories
-> выберите репозиторий -> Действия -> Управление репозиторием -> Филиалы-> Редактировать. Здесь вы можете установить Track Only
описать, на какие ветви фабрикатор должен смотреть.
У меня есть несколько веток, где я хочу игнорировать фабрикатор personal/$USER/
ветви, таким образом, я установил Track Only
чтобы:
regexp(/^(?!personal)/)
Посмотрите на документацию.
Ответ Андерса был неудовлетворительным для наших нужд, так как исключение ветви из отслеживаемого означает, что Phabricator вообще не может ее увидеть, поэтому ветвь не может быть просмотрена в Diffusion, что делает невозможным проверку кода с помощью встроенных комментариев. То, что мы хотим сделать, это просто предотвратить Ref Txxx
от вступления в силу, когда это происходит в ветвях, соответствующих указанному шаблону.
Оказывается, это именно то, что делает Autoclose. Документация не говорит об этом, и название не подразумевает этого, но Ref Txxx
вступает в силу только в тех ветвях, в которых включена автозаполнение. В документации только сказано, что Autoclose контролирует, Closes Txxx
может автоматически изменять статус задачи.
Перейдите к своему хранилищу в Diffusion и выберите " Действия"⇾ "Управление хранилищем"⇾ "Филиалы"⇾ "Редактировать".
Предположим, вы хотите отключить Ref
ссылки в feature/*
ветви. Установите "Только автозаполнение" на:
regexp(/^(?!feature\/)/)
(Обратите внимание на использование \/
чтобы избежать /
который в противном случае будет рассматриваться как конец регулярного выражения.)
Это список, и ветвь включена, если она соответствует одному или нескольким шаблонам, поэтому предположим, что вы хотите включить Ref
ссылки для master
, release/*
, а также develop/*
ветви и отключите их во всех других ветках. Вы должны установить "Только автозаполнение":
master
regexp(/^release\//)
regexp(/^develop\//)