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

OSCHINA-MIRROR/apache-druid

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CONTRIBUTING.md 9.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 06.03.2025 22:19 438f0b8

Как сделать вклад

При отправке запроса на вытягивание (pull request, PR), пожалуйста, используйте следующие рекомендации:- Убедитесь, что ваш код следует существующим соглашениям о форматировании. Общее правило — придерживаться того же стиля программирования, что и тот код, который вы модифицируете.

  • Для IntelliJ можно импортировать наши настройки форматирования XML: druid_intellij_formatting.xml.
  • Для Eclipse можно импортировать наши настройки форматирования XML: eclipse_formatting.xml.
  • При необходимости добавьте или обновите документацию соответственно изменениям, которые вы вносите.
  • Если вы внедряете новую функцию, возможно, стоит сначала написать о своей идее для получения обратной связи на dev@druid.apache.org. Или создайте задачу, используя шаблон "Feature/Change". Нелинейные функции должны включать юнит-тесты, охватывающие новую функциональность. Откройте задачу "Proposal" для крупных изменений.
  • Исправления ошибок должны включать юнит-тест или интеграционный тест, воспроизводящий проблему.
  • Не используйте информацию об авторах в коде.
  • По возможности сохраняйте запросы на вытягивание короткими и отправляйте отдельные запросы для независимых функций, но не стесняйтесь объединять простые исправления ошибок/тесты в один запрос на вытягивание.
  • Если вы добавляете или обновляете зависимость, убедитесь, что вы обновили информацию о версии, лицензии или уведомлении в [licenses].yaml по мере необходимости, чтобы облегчить управление лицензиями и уведомлениями для выпусков Apache基金会。

Перевод: yaml по мере необходимости, чтобы облегчить управление лицензиями и уведомлениями для выпусков Apache организации.

Вы можете найти больше ресурсов для разработчиков в директории dev/.

GitHub Workflow

  1. Создайте форк репозитория apache/druid в вашем аккаунте GitHub

    https://github.com/apache/druid/fork

  2. Клонируйте свой форк репозитория GitHub

    git clone git@github.com:<username>/druid.git

    Замените <username> своим именем пользователя GitHub.

  3. Добавьте удалённый репозиторий, чтобы следить за изменениями upstream

    git remote add upstream https://github.com/apache/druid.git

    Если у вас уже есть копия, получите изменения upstream

    git fetch upstream master
  4. Создайте ветку с новой функцией для работы

    git checkout -b feature-xxx remotes/upstream/master
  5. Перед отправкой запроса на слияние периодически выполняйте ребейз ваших изменений (но не делайте этого, когда запрос на слияние уже отправлен)

    git pull --rebase upstream master
  6. Перед отправкой запроса на слияние объедините ("squash") связанные коммиты в один

    git rebase -i upstream/master

    Это откроет ваш редактор и позволит вам переупорядочивать коммиты и объединять их:

    • Переупорядочите строки для изменения порядка коммитов (в пределах возможностей без создания конфликтов)
    • Предфиксируйте коммиты используя s (squash) или f (fixup) для объединения лишних коммитов.
  7. Отправьте запрос на слияние

    git push origin feature-xxx

    Перейдите на главную страницу вашего форка Druid ``` https://github.com//druid

    
    Если вы недавно отправили свои изменения, GitHub автоматически покажет кнопку
    "Сравнить и отправить запрос на слияние" для любых веток, которые вы недавно отправили. Если вы
    нажмете эту кнопку, она автоматически предложит вам отправить ваш запрос на слияние
    в репозиторий apache/druid.
    
    - Укажите значимое название для своего запроса на слияние.
    - В описании объясните ваши изменения и проблему, которую они решают.
    
  8. Обработка отзывов кода

    Обрабатывайте отзывы кода, выполняя коммиты изменений и отправляя их в вашу ветку с новой функцией.

    git push origin feature-xxx

Если ваш запрос на слияние показывает конфликты с master

Если ваш запрос на слияние показывает конфликты с master, выполните слияние master в вашу ветку с новой функцией:

git merge upstream/master

и разрешите конфликты. После разрешения конфликтов снова отправьте вашу ветку:

git push origin feature-xxx
```  _Избегайте ребейза и форси-пушей после отправки pull запроса,_ так как это затрудняет работу проверяющих в процессе просмотра того, что вы изменили в ответ на их отзывы. Commitтер проекта Druid, который будет объединять вашу правку, выполнит ребейз и свалку правок в один коммит перед тем, как зафиксировать изменения в мастере.

## Часто задаваемые вопросы### Помогите! Я слил изменения из основной ветки и не могу понять, как решить конфликты при ребейзе!

Не бойтесь! Если вы иногда сливали upstream/master, вот другой способ свалки ваших изменений в один коммит:

1. Сначала переименуйте вашу текущую ветку в другое имя, например `feature-xxx-unclean`.

  ```bash
  git branch -m feature-xxx-unclean
  ```

2. Создайте новую ветку с первоначальным именем `feature-xxx` от upstream. Эта ветка заменит нашу старую.

  ```bash
  git checkout -b feature-xxx upstream/master
  ```

3. Теперь сложите ваши изменения из вашей первой ветки `feature-xxx-unclean` и создайте единственный коммит.

  ```bash
  git merge --squash feature-xxx-unclean
  git commit
  ```

4. Вы можете теперь отправить эту новую ветку и создать или заменить свой существующий pull запрос.

  ```bash
  git push origin [--force] feature-xxx:feature-xxx
  ```

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

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

1
https://api.gitlife.ru/oschina-mirror/apache-druid.git
git@api.gitlife.ru:oschina-mirror/apache-druid.git
oschina-mirror
apache-druid
apache-druid
master