hexlet-friends
hexlet-friends copied to clipboard
Bug: Отображаются форкнутые репозитории
Форкнутые репозитории отображаются вместе с основным. Организация обозначена только у основного. Остальные выглядят как клоны. Вопрос 1. Должны ли эти репозитории впринципе попадать в базу? Вопрос 2. Если должны, то необходимо ли добавлять обозначать, что это fork repository?
@TarakanovAndrey можете скрин показать? ИЗ текущего описания непонятно в чем проблема. Если вы форкнули проект и в нем ведете работу, то почему бы ее не учитывать? :thinking:
@TarakanovAndrey можете скрин показать? ИЗ текущего описания непонятно в чем проблема. Если вы форкнули проект и в нем ведете работу, то почему бы ее не учитывать? 🤔
Вот так это выглядит сейчас. Я сначала подумал, что баг. Потом выяснил, что все это форкнутые репы. Но возникает некотрое замешательство, когда видиш такой список. Может стоит рассмотреть каким-либо образом маркировать форкнутые репы?
давайте выводить фулл нейм + лейбл форка. фулл нейм это username/repo-name
.
Чтобы протетстить, надо выполнить fetchdata локально для форкнутого репозитория. Пытаясь выполнить make sync RubanovDmitriy/hexlet-friends я получаю ошибку - Forbidden for url: https://api.github.com/users/Hexlet из чего вопрос, нужно этого юзера в collaborators добавить?
И по самой задаче, "выводить фулл нейм + лейбл форка" т.е. на моём привере, то ожидаемое поведение должно быть: RubanovDmitriy/hexlet-friends/Python ? Python я взял из модели Label. Если нет, то прошу уточнить что такое "лейбл форка"
RubanovDmitriy/hexlet-friends/Python
Точнее будет RubanovDmitriy/hexlet-friends
+ бейдж (Fork) aka label
Вот как в доке бутстрапа:
https://getbootstrap.com/docs/5.0/components/badge/
Пытаясь выполнить make sync RubanovDmitriy/hexlet-friends я получаю ошибку - Forbidden for url: https://api.github.com/users/Hexlet из чего вопрос, нужно этого юзера в collaborators добавить?
Насчет этого не понял. По идее нам же не нужно юзеров добавлять в коллабораторы. Может у вас что-то не то с токеном?
Пытаясь выполнить make sync RubanovDmitriy/hexlet-friends я получаю ошибку - Forbidden for url: https://api.github.com/users/Hexlet из чего вопрос, нужно этого юзера в collaborators добавить?
Насчет этого не понял. По идее нам же не нужно юзеров добавлять в коллабораторы. Может у вас что-то не то с токеном?
Затупил, надо было 'make sync ARGS="--repo RubanovDmitriy/hexlet-friends"' выполнять
Да, отлично.
- PR https://github.com/Hexlet/hexlet-friends/pull/367
- Render https://dr-hexlet-friends-issue-360.onrender.com/repositories/ В template добавлена проверка, если Repository.organization.name != 'Hexlet', то считаем репозиторий форкнутым. И на фронте показываем его full_name и бейдж Fork issue думаю можно на меня заасайнить
Переделал с fork, он для этого нужна миграция. Сделал default=False надо будет на проде тогда для всех репозиториев свежие данные подтянуть, чтобы актуально обновилось. Другого способа пока не вижу.
актуально
Возьму в работу
Пожалуйста, осмотрите, как щас работает, на свежем репозитории. У нас есть проблема с актуализацией данных, возможно нужно написать скрипт, который проходится по текущим данным и обновляет их.
А что с PR, предложенным выше? Мне стоит как-то ориентироваться на него? Сейчас в проекте, как я понял, всё ещё нет никакого разделения репозиториев на оригинал и форк.
По идее я могу выгрузку в csv сделать, для анализа текущих данных в БД. У нас не работает толком загрузка свежих данных/синхронизация данных, поэтому возможно те репозитории, что есть - не отображаются как форки. Можно например такой вариант - берем список популярных реп (типа тот же hexlet-friends и для всех реп кроме Хекслетовского проставляем нужный флаг (если он появился в бд). Флажок можно будет через миграцию проставить