1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ng-util-ng-util

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CONTRIBUTING.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 15:14 7c2ac21

Вклад в ng-util

Мы будем рады, если вы внесёте свой вклад в ng-util и поможете сделать его ещё лучше, чем он есть сегодня! Вот рекомендации для участников:

Нашли ошибку?

Если вы обнаружили ошибку в исходном коде, вы можете помочь нам, отправив проблему на GitHub. Ещё лучше — отправьте запрос на включение изменений (pull request) с исправлением.

Не хватает функции?

Вы можете попросить новую функцию, отправив проблему в репозиторий GitHub. Если вы хотите реализовать новую функцию, сначала отправьте проблему с запросом на работу, чтобы мы могли использовать её. Пожалуйста, подумайте, какое это изменение:

  • Для основной функции сначала откройте проблему и опишите своё предложение, чтобы его можно было обсудить. Это также позволит нам лучше координировать наши усилия, предотвращать дублирование работы и помогать вам создавать изменения, которые будут успешно приняты в проект.
  • Небольшие функции можно создать и сразу отправить как запрос на включение изменений.

Рекомендации по отправке

Отправка проблемы

Прежде чем отправить проблему, пожалуйста, поищите в трекере проблем, возможно, проблема уже существует и обсуждение может подсказать вам обходные пути.

Мы хотим исправить все проблемы как можно скорее, но перед исправлением ошибки нам нужно воспроизвести и подтвердить её. Чтобы воспроизвести ошибки, мы систематически попросим вас предоставить минимальный сценарий воспроизведения с помощью http://plnkr.co. Наличие живого воспроизводимого сценария даёт нам массу важной информации без необходимости возвращаться к вам с дополнительными вопросами, такими как:

  • версия используемого ng-util;
  • сторонние библиотеки и их версии;
  • и самое главное — сценарий использования, который не работает.

Минимальный сценарий воспроизведения с использованием http://plnkr.co/ позволяет нам быстро подтвердить ошибку (или указать на проблему кодирования), а также подтвердить, что мы исправляем правильную проблему. Если plunker не подходит для демонстрации проблемы (например, для проблем, связанных с нашей упаковкой npm), создайте отдельный git-репозиторий, демонстрирующий проблему.

Мы настаиваем на минимальном сценарии воспроизведения, чтобы сэкономить время сопровождающих и в конечном итоге иметь возможность исправлять больше ошибок. Интересно, что, по нашему опыту, пользователи часто сами находят проблемы кодирования при подготовке минимального plunk. Мы понимаем, что иногда бывает трудно извлечь важные фрагменты кода из большой кодовой базы, но нам действительно нужно изолировать проблему, прежде чем мы сможем её исправить.

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

Вы можете подать новые проблемы, заполнив нашу форму новой проблемы https://github.com/ng-util/ng-util/issues/new.

Отправка запроса на включение изменений (PR)

Прежде чем отправлять запрос на включение изменений, рассмотрите следующие рекомендации:

  • Поиск на GitHub открытых или закрытых PR, которые связаны с вашей отправкой. Вы не хотите дублировать усилия.

  • Внесите изменения в новую ветку git:

    git checkout -b my-fix-branch master
  • Создайте патч, включая соответствующие тестовые случаи.

  • Следуйте нашим правилам кодирования.

  • Запустите полный набор тестов ng-util , и убедитесь, что все тесты пройдены.

  • Фиксация изменений с использованием описательного сообщения фиксации, которое следует нашим соглашениям о сообщениях фиксации. Соблюдение этих соглашений необходимо, потому что примечания к выпуску автоматически генерируются из этих сообщений.

    git commit -a
    ``` **will automatically «add» и «rm» отредактированные файлы.**
    
  • Отправьте свою ветку на GitHub:

    git push origin my-fix-branch
  • На GitHub отправьте запрос на слияние в ветку ng-util:master.

  • Если мы предложим внести изменения, то:

    • Внесите необходимые обновления.

    • Заново запустите тестовые наборы ng-util, чтобы убедиться, что тесты всё ещё проходят.

    • Перебазируйте свою ветку и принудительно отправьте её в свой репозиторий GitHub (это обновит ваш запрос на слияние):

      git rebase master -i
      git push -f

Это всё! Спасибо за ваш вклад!

После того как ваш запрос на слияние будет одобрен

После того как ваш запрос на слияние будет одобрен, вы можете безопасно удалить свою ветку и извлечь изменения из основного (восходящего) репозитория:

  • Удалите удалённую ветку на GitHub через веб-интерфейс GitHub или локальную оболочку следующим образом:

    git push origin --delete my-fix-branch
  • Проверьте основную ветку:

    git checkout master -f
  • Удалите локальную ветку:

    git branch -D my-fix-branch
  • Обновите свой мастер последней версией восходящего потока:

    git pull --ff upstream master

Правила кодирования

Чтобы обеспечить согласованность исходного кода, помните об этих правилах во время работы:

  • Все функции или исправления ошибок должны быть протестированы одним или несколькими тестами (юнит-тесты).
  • Все общедоступные методы API должны быть документированы.

Рекомендации по оформлению сообщений о фиксации

У нас есть очень чёткие правила относительно того, как могут быть отформатированы наши сообщения о фиксации git. Это приводит к более читаемым сообщениям, которые легко отслеживать при просмотре истории проекта. Кроме того, мы используем сообщения git commit для создания журнала изменений ng-util.

Формат сообщения о фиксации

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

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

Заголовок является обязательным, а область действия заголовка — необязательной.

Любая строка сообщения о фиксации не может быть длиннее 100 символов! Это позволяет сообщению легче читаться на GitHub, а также в различных инструментах git.

Нижний колонтитул должен содержать закрывающую ссылку на проблему, если таковая имеется.

Примеры: (ещё больше примеров)

docs(changelog): update change log to beta.5
fix(release): need to depend on latest rxjs and zone.js

The version in our package.json gets copied to the one we publish, and users need the latest of these.

Возврат

Если фиксация отменяет предыдущую фиксацию, она должна начинаться с revert: , за которым следует заголовок отменённой фиксации. В теле должно быть сказано: «Это отменяет фиксацию <хэш>», где хэш — это SHA отменяемой фиксации.

Тип

Должен быть одним из следующих:

  • build: Изменения, влияющие на систему сборки или внешние зависимости (примеры областей: gulp, broccoli, npm).
  • ci: Изменения в нашей конфигурации CI и сценариях (примеры областей: Travis, Circle, BrowserStack, SauceLabs).
  • docs: Только изменения документации.
  • feat: Новая функция.
  • fix: Исправление ошибки.
  • perf: Изменение кода, которое улучшает производительность.
  • refactor: Изменение кода, которое не исправляет ошибку и не добавляет функцию.
  • style: Изменения, которые не влияют на смысл кода (пробел, форматирование, отсутствующие точки с запятой и т. д.).
  • test: Добавление недостающих тестов или исправление существующих тестов.

Тема

Тема содержит краткое описание изменения:

  • используйте повелительное наклонение, настоящее время: «изменить», а не «изменено» или «изменения».
  • не используйте заглавные буквы в начале.
  • без точки (.) в конце.

Тело

Как и в теме, используйте повелительное наклонение, настоящее время: «измените», а не «изменённое» или «изменение». Тело должно включать мотивацию для изменения и противопоставлять его предыдущему поведению.

Нижний колонтитул

Нижний колонтитул должен содержать любую информацию о критических изменениях и также является местом для...

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/ng-util-ng-util.git
git@api.gitlife.ru:oschina-mirror/ng-util-ng-util.git
oschina-mirror
ng-util-ng-util
ng-util-ng-util
master