Английский | Китайский язык (упрощённый)
Если у вас есть какие-либо замечания или советы, пожалуйста, сообщите о вашей проблеме, или сделайте любые изменения по своему желанию и отправьте PR.
Члены группы Egg проверят цель проблемы, заменят более точными метками, определят связанный этап и назначат разработчиков для её решения.
Метки можно разделить на две категории: тип
и область
.
функциональность
, ошибка
, документация
, производительность
, поддержка
...core: xx
, плагин: xx
, зависимости: xx
поддержка
: если проблема требует помощи от членов нашей группы, отметьте её как поддержка
.ошибка
: если вы нашли проблему, которая может быть ошибкой, отметьте её как ошибка
. Затем члены нашей группы проверят эту проблему. Если она будет подтверждена как ошибка, эта проблема будет помечена как подтвержденная
.
критическая
, что указывает на первостепенную важность, и будет исправлена как можно скорее!0.9
, 0.10
, 1.0
, 1.1
, что указывает на необходимость исправления этой ошибки в этих версиях.core: xx
: проблема связана с основной частью, например core: loader
указывает на то, что проблема связана с конфигурацией loader
.plugin: xx
: проблема связана с плагинами, например plugin: session
указывает на то, что проблема связана с плагином session
.deps: xx
: проблема связана с зависимостями, например deps:egg-cors
указывает на то, что проблема связана с модулем egg-cors
.chore: документация
: проблема связана с документацией. Нужно изменить документацию.Все новые функции должны быть представлены вместе с документацией. Документация должна удовлетворять нескольким требованиям.
Пожалуйста, щелкните кнопку "Fork" на главной странице Egg чтобы вилковать последний код в свой собственный репозиторий. Затем клонируйте его на ваш локальный компьютер с помощью помощи git и работайте над этим.
Вы можете установить все зависимости, перечисленные в package.json
, с помощью npm
:
npm i
Если возникают проблемы, связанные с зависимостями, во время установки, вы можете временно решить их, добавив --legacy-peer-deps
, когда ваша версия npm >= 7.X:
npm i --legacy-peer-deps
Затем вы можете отправить PR напрямую в списке "Issues", чтобы своевременно уведомить автора.
Если вы разработчик репозитория egg и готовы сделать вклад, смело создайте новый ветвь, завершите свои изменения и отправьте PR. Группа Egg проверит ваш вклад и сложит его в основную ветвь.
# Создайте новую ветвь для развития. Имя ветви должно быть семантическим, избегая слов типа 'обновление' или 'временная'. Мы рекомендуем использовать название вида feature/xxx, если изменения связаны с реализацией нового функционала.
$ git checkout -b branch-name
# После завершения ваших изменений запустите тест. Добавьте новые случаи тестирования или измените старые, если считаете нужным
$ npm test
# Если ваши изменения прошли тестирование, поздравляем! Пришло время отправить вашу работу обратно. Обратите внимание, что сообщение коммита должно быть записано в следующем формате.
$ git add . # git add -u для удаления файлов
$ git commit -m "fix(role): role.use должен быть xxx"
$ git push origin branch-name
Затем вы можете создать Pull Request на egg
Никто не гарантирует, сколько информации о конкретном PR будет запомнено через некоторое время. Чтобы гарантировать, что мы можем легко воспроизвести предыдущую информацию, пожалуйста, предоставьте следующую информацию в вашем PR.
Eslint поможет выявить стильные проблемы, которые могут существовать в вашем коде. Ваш код должен успешно пройти тестирование от Eslint. Запустите тест локально командой $ npm run lint
.
<type>(<scope>): <subject>
<ПУСТАЯ СТРОКА>
<body>
<ПУСТАЯ СТРОКА>
<footer>
(1) Тип
Должен быть одним из следующих:
(2) Область
Область может быть любой, указывающей место изменения коммита. Например $location$, $browser$, $compile$, $rootScope$,
ngHref,
ngClick,
ngView`, и т.д.
(3) Тема
Используйте краткие слова для описания того, что вы сделали в этом изменении.
(4) Тело
Добавьте больше контента в теле, если считаете, что тема недостаточно самоясна, например, что является целью или причиной вашего коммита.
(5) Подвал
Закрыть #1, Закрыть #2, #3
doc
и egg-core
, например eggjs/egg-core#123
Пример:
fix($compile): [BREAKING_CHANGE] несколько единичных тестов для IE9
Старые IE сериализуют html заглавными буквами, но IE9 нет...
Было бы лучше ожидать регистронезависимость, однако Jasmine не позволяет использовать регулярные выражения для ожиданий выброса.
Документация изменений на eggjs/egg#123
Закрыть #392
BREAKING CHANGE:
Разрывает foo.bar api, foo.baz следует использовать вместо него
Для получения дополнительной информации просмотрите эти файлы.
Мы следуем обычным принципам английской статьи при переводе, однако, поскольку существуют некоторые специальные принципы заголовков, мы должны следовать этим правилам:
Для получения дополнительной информации, пожалуйста, обратитесь к [английскому заголовку Case].
Если вы изменили какой-либо файл внутри папки "docs" внутри папки "site", вам потребуется перегенерировать документы, чтобы увидеть реальное воздействие.
Если вы используете версию Node между 14 и 16, пожалуйста, используйте следующую команду:
$ npm run site:devWithNode14-16
В остальных случаях используйте:
$ npm run site:dev
Node.js не будет работать правильно после версии 17.X из-за проблемы OpenSSL, вам придётся понизить версию Node как решение.
Если вы просто хотите построить документы, используйте site:build
вместо этого.
Egg использует семантическую версию в процессе выпуска на основе semver.
ветвь master
является последней стабильной версией. ветвь next
является следующей стабильной версией, находящейся в разработке. Все новые функции будут добавлены в ветку master
или next
, а также все исправления ошибок, кроме проблем безопасности. Таким образом, мы можем мотивировать разработчиков обновляться до последней стабильной версии.
Если какой-либо API будет отключен, это должно быть указано с помощью deprecate
в текущей стабильной версии. Старая версия API должна быть совместимой до выпуска следующей стабильной версии.
Ветка master
не имеет публичного тега. Высокоуровневый фреймворк может работать со стабильными версиями, определёнными с помощью семантической версионной нумерации.
Ветка next
помечена тегом next
. Высокоуровневый фреймворк может использовать egg@next
, чтобы тестировать текущую версию в процессе разработки.
LTS версии Egg определяются через Milestones. Если версия указана в Milestone, то она является LTS версией. Мы будем исправлять её, если возникнут какие-либо проблемы.
При каждом выпуске стабильной версии будет назначен менеджер проекта (PM), который будет выполнять следующие обязанности на разных этапах выпуска.
next
из ветки master
и отметьте её как next
.Откройте новый Proposal MR для выпуска и запишите историю как node CHANGELOG. Не забудьте исправить содержание документации, которое относится к выпускаемой версии. Коммиты можно создать автоматически.
$ npm run commits
Назначьте PM для следующей стабильной версии.
1.x
), и установите тег release-{v}.x
(где v — текущая версия, например release-1.x
).next
на master
, сделав её последней стабильной версией и удалив тег next
, измените содержимое, соответствующее ветке в README.npm publish
, прочитайте Как развернуть пакет npm.Все упомянутые выше теги означают теги npm в package.json
.
"publishConfig": {
"tag": "next"
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )