Со временем я реализую такие вещи в Magit (я сопровождаю), но сначала мне нужно выпустить релиз.
Старая устаревшая информация: К сожалению, в настоящее время также нет сторонних расширений, которые могли бы выполнять эту роль. magithub
уже давно сломан. magit-gh-pulls
(автор Yann, мой предшественник на посту сопровождающего Magit) также не синхронизировался с изменениями в Magit. Я пытался исправить это некоторое время назад, но сдался, когда стало ясно, что это приведет к полной перезаписи . gh.el
также написано Yann и используется magit-gh-pulls
. Я внес свой вклад в него в прошлом, но в конце концов перестал его использовать, потому что (а) он использует url.el
, и это оказалось очень ненадежным (б) это слишком сложно.
Поэтому я боюсь, что в настоящее время нет пакета, который делает то, что вы хотите. Если вы хотите написать его самостоятельно, я рекомендую вам использовать request.el
, а затем реализовывать только те части API Github, которые вам действительно нужны, чтобы избежать чрезмерной разработки.
Изменить: по состоянию на октябрь 2015 г. magit-gh-pulls
снова поддерживается, но больше не является официальным расширением. Лично я им не пользуюсь, так как считаю, что должно быть больше или меньше. В настоящее время я использую «меньше» в форме magit-branch-pull-request
из библиотеки magit-rockstar
. Несмотря на то, что я поддерживаю эту библиотеку, я не считаю ее официальным расширением — она предоставляется как есть. Эта функция очень проста, вы даете ей номер выпуска, и она создает для вас ветку, вот и все.
Редактирование в сентябре 2016 г.: я написал ghub.el
и glab.el
вместо gh.el
. В основном они предназначены для моего личного использования и предоставляют очень мало, в основном они дают вам такие функции, как ghub-get (resource &optional params data noerror)
, затем вам нужно просмотреть соответствующую документацию по API, чтобы выяснить, что resource
, params
и data
вы должны использовать. Также обработка ошибок не очень хороша, и в настоящее время используется url.el
. Я намереваюсь в конечном итоге улучшить оба, используя libcurl
через некоторое время после выпуска Emacs с поддержкой ffi.
Редактировать в январе 2020 г. Более года назад у меня выпущен forge
.
Forge позволяет вам работать с кузницами Git, такими как Github и Gitlab, с комфортом Magit и остальной части Emacs.
person
tarsius
schedule
02.06.2014
call-process
иset-process-sentinel
, и за кулисами выполнять оболочку, чтобы вы никогда не чувствовали, что покидаете текущий буфер - библиотеки, о которых вы упомянули, в любом случае обрушиваются. Если нужная вам функция не существует, просто создайте ее, как несвязанную функцию по следующей ссылке (которая отправляет в несколько репозиториев): stackoverflow.com/a/23178396/2112489 - person lawlist   schedule 02.06.2014