git: Как я могу узнать, есть ли запрос на получение ветки?
Я на ветке мерзавца. Есть ли способ посмотреть, есть ли pull-запрос для этой ветки?
В этом конкретном случае Atlassian-Stash используется для управления запросами. Конечно, я могу использовать веб-интерфейс Stash для поиска по запросу; но можно ли сделать это тоже из скрипта, просто используя инструменты командной строки git?
2 ответа
В Core Git нет ничего похожего на (github, atlassian,...) функцию извлечения запросов, так что вам не повезло со стандартными командами git. (Ну есть git-request-pull
, но это немного отличается).
К счастью, atlassian/stash (и github) предоставляют API, которые позволяют вам использовать их с помощью cmdline-tools (в отличие от браузера).
После того, как вы создали небольшой скрипт, который запрашивает у сервера запросы на извлечение, вы можете превратить его в подкоманду, добавив к вашему скрипту префикс git-
и положить его где-то в вашем пути поиска.
например, если ваш скрипт называется git-check-pulls
, вы можете использовать его как git check-pulls ...
С помощью инструмента командной строки github вы можете просто:gh pr view
Как объяснил umlaute, вы можете использовать небольшой скрипт, чтобы проверить, есть ли какие-либо запросы на получение.
Вот небольшой скрипт на python, который я использовал некоторое время назад для проверки запросов на получение.
import urllib2
from StringIO import StringIO
import json
data = urllib2.urlopen("https://api.github.com/repos/<username>/<branch>/pulls").read()
io = StringIO(data)
jsondata = json.load(io)
for item in jsondata:
print "pull request :: " + item['title']
Для извлечения данных из тайника потребуется другой URL. И данные JSON, кажется, имеют немного другую структуру.
for item in jsondata['values']:
Строка, которая должна быть изменена, чтобы получать запросы извлечения из хранилища.