Як перемістити випуск на github в інше репо?


96

Це трапляється раз у раз. Деяка бібліотека залежить від іншої, і користувач відкриває випуск, який належить неправильному репозиторію. Чи можу я перенести випуск в інший репо?

Ви можете стверджувати, що ця проблема може розглядатися як проблема репозиторіїв, оскільки одне залежить від іншого, і поки одне не працює належним чином, обидва ні. Але я б скоріше поговорив про вирішення проблеми у репо, до якого воно належить.


Вам більше не потрібно бути адміністратором сховищ джерел і призначення, щоб переміщати проблему між ними. Дивіться мою відповідь нижче .
VonC

Відповіді:


34

Див . Документи GitHub щодо передачі проблем .

Перенесення відкритого випуску в інше сховище

На GitHub перейдіть на головну сторінку сховища.

Під назвою сховища натисніть Випуски .

У списку випусків натисніть на випуск, який ви хочете передати.

На правій бічній панелі натисніть Передати цю проблему .


2
Було б чудово, коли б можна було перенести всі випуски одного репо до іншого.
CGFoX

@CGFoX створив запит на функцію за адресою: github.com/isaacs/github/issues/1605
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功

Слід зазначити, що вам потрібен дозвіл на запис на обидва репозиторії, інакше ця опція недоступна.
Бретт Саттон,

60

Ні, офіційно ви не можете переміщувати проблеми між сховищами.

Існує хакерство, github-issues-import , різновид плагіна, щоб імпортувати проблеми зі сховища в інше.


4
Створив ще одну зламану версію gh-issues- importor
Мікко Отамаа

2
gh-issues-importздавався мені зламаним (постійно отримував 404). Я використовував сценарій Мікко, і він працював нормально. Однак він не закривав закриті питання, не імпортував ярлики чи етапи. Просто оновіть ім'я користувача / пароль і видаліть посилання на colored.
Олександр

3
Щоб сценарій Мікко працював для закритих питань, просто додайте state=closedдо get_issuesметоду параметри запиту url .
Calvin

1
Сценарій Мікко чудово працює, але містить помилку, створює проблеми в інвертованому порядку. Просто додайте & sort = created & direction = asc до параметрів запиту URL-адреси в методі get_issues.
Marco Fucci

1
Я також створив простий сценарій імпортера випусків для переміщення одного випуску з одного репо в інше. Він буде просити вас ввести ім’я користувача, пароль, репозиторій джерела та місця призначення при кожному використанні, тому вам не доведеться змінювати код взагалі. Етикетки та етапи також копіюються. Можливо, це комусь корисно: github.com/jotweh/IssueRelocate
Jan Wy


3

Перемістити випуск Якщо у вас є інтеграція ZenHub, ви побачите цю кнопку внизу праворуч під час перегляду проблеми. Це дозволяє скопіювати випуск в інший репо в тій же організації або скопіювати та закрити .

І так, "Move Issue" - неправильна назва.

Здається, досі немає можливості перемістити (скопіювати та видалити) або просто видалити помилково подану проблему.

РЕДАГУВАТИ: Обережно, v1 цієї функції має основні обмеження, наприклад, залишення деяких (більшості?) Метаданих випуску, не сповіщення передплатників тощо.


Хм, я не бачу цієї кнопки під час переходу до одного зі своїх відкритих випусків.
вступ

1
@DeaDEnD О, біс, погано. Це функція ZenHub, не вбудована в GitHub. Ну, це зовсім не бентежить, якщо дві організації самостійно зломють один і той же веб-інтерфейс.
Spike0xff

1
І я просто дурна кривошипно думати , що в моєму діалекті англійської мови, коли ви перемістіть що - то, що з'являється в новому місці і перестає бути там , де це було раніше ? Два слова UI, і вони не могли отримати їх як правильно?
Spike0xff

Я спробував, але не зміг знайти
репозиторії

2

Це тепер (травень 2019 р.) Простіше.

Див. " Удосконалення видачі дозволів на передачу "

Користувачі, які мають доступ до записів до двох сховищ, тепер можуть використовувати передачу випусків для переміщення проблем між ними.
Раніше лише користувачі з дозволами адміністратора в обох сховищах мали можливість передавати проблеми.

Крім того, ми більше не дозволимо передавати випуски з приватних у загальнодоступні сховища.

Докладніше див. У розділі " Перенесення проблеми в інше сховище ".


1

Візуальна відповідь взята з github docs:

Перенесення відкритого випуску в інше сховище

  1. На GitHub перейдіть на головну сторінку сховища.
  2. Під назвою сховища натисніть Випуски. Вкладка "Проблеми"
  3. У списку випусків натисніть на випуск, який ви хочете передати.
  4. На правій бічній панелі натисніть Передати проблему. Кнопка для передачі випуску
  5. Скористайтеся спадним меню Вибір сховища та виберіть сховище, куди потрібно перенести проблему.

Виберіть вибір сховища

  1. Натисніть Передати проблему.

Кнопка передачі проблеми


Так, в документації я згадую в моїй обороні: stackoverflow.com/a/56373555/6309
VonC
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.