Из какого коммита был создан конкретный релиз на rubygems? - PullRequest
1 голос
/ 24 сентября 2019

Я пытаюсь создать историю релизов. Как я могу определить, из какого коммита была создана конкретная версия гема на rubygems.com?Когда я извлекаю архив * .gem, он не включает в себя запись в журнал фиксации.

РЕДАКТИРОВАТЬ: релизы были помещены в rubygems без обновления репозитория github соответствующими тегами, я хочу заполнить github соответствующимиотпустить теги.

Ответы [ 2 ]

2 голосов
/ 27 сентября 2019

Простой ответ: Вы не можете!

Версии гемов на Rubygems и коммитов или тегов в Git - это две совершенно разные концепции и не имеют ничего общего.

Вы уже обнаружили, что гем не содержит никакой информации об использовании git или конкретном коммите.И если вы думаете об этом, то имеет смысл, что гемы не содержат информацию о системе управления версиями, которая использовалась:

  • Нет необходимости использовать Rubygems и Git одновременно.На самом деле, при создании гемов вообще нет необходимости использовать систему контроля версий.
  • И даже если автор использовал систему контроля версий, существуют и другие системы контроля версий, например SVN или Mercurial.
  • Даже если автор использовал Git для отслеживания изменений своего исходного кода, он все же мог бы создавать и загружать несколько различных версий гема, не делая в то же время ни одного git commit.
  • Идаже если автор сделал коммит для каждой версии гема, то - в зависимости от конфигурации гема и репозитория git - обе системы могут включать файлы, которые существуют в одной системе, но не в другой.

Тем не менее, предположение, что конкретная версия гема соответствует определенному git коммиту, просто неверно.

0 голосов
/ 24 сентября 2019

Обычно на странице драгоценных камней есть ссылка на исходный код rubygems.org

Оттуда вы должны быть доставлены в репозиторий, например, если вы посещаете https://rubygems.org/gems/devise вы увидите ссылку на правой стороне страницы с надписью Source Code, которая должна указывать на

https://github.com/plataformatec/devise/

Затем вы можете просто нажать releases внаверх репо или перейдите на https://github.com/plataformatec/devise/releases

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

Если вы просто загрузите файл .gem с rubygems.org, который будет включать толькосам код gem, а не история git вообще.Если вам нужна полная история Git, вы должны клонировать репо на свой локальный компьютер.Для этого нажмите кнопку Clone or download в верхней части домашней страницы репо.Если вы скопируете URL-адрес оттуда, можете просто зайти в свой терминал и набрать

git clone <paste repo url here>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...