Я знаю Как я могу проверить запрос на извлечение GitHub?
При добавлении fetch = +refs/pull/*/head:refs/remotes/origin/pr/*
в .git/config
разрешает выборку и выгрузку, вытягивание действий не выполняется:
[remote "origin"]
url = https://github.com/the/repo.git
fetch = +refs/heads/*:refs/remotes/origin/*
fetch = +refs/pull/*/head:refs/remotes/origin/pr/*
Эффект Fetch и Checkout отлично работает:
$ git fetch origin
... все хорошо
$ git checkout -b "pr-123" origin/pr/123
Branch pr-123 set up to track remote branch pr/123 from origin.
Switched to a new branch 'pr-123'
... успех, получил код!
Но сбой не получается:
$ git pull
Your configuration specifies to merge with the ref 'refs/heads/pr/123'
from the remote, but no such ref was fetched.
... не удалось.
Я могу указать ref вручную:
$ git pull origin refs/pull/123/head
и это работает. Но как настроить конфигурационный файл так, чтобы:
- выборка и проверка еще работают, и
- последующие действия pull работают без ручного указания удаленного ref?
Я обнаружил, что если отредактировать файл конфигурации и изменить:
[branch "pr-123"]
remote = origin
merge = refs/heads/pr/123
в
[branch "pr-123"]
remote = origin
merge = refs/pull/123/head # <-- here is the change
... тогда git pull
работает нормально. Как это можно добиться без ручного редактирования файла конфигурации для каждого запроса на растяжение?