DOCSUP-11551: Add ru contrib info.

This commit is contained in:
romanzhukov 2021-07-22 20:53:30 +03:00
parent 7feafffe5a
commit 492af9332c

View File

@ -41,13 +41,13 @@ toc_title: "Используемые сторонние библиотеки"
## Рекомендации по добавлению сторонних библиотек и поддержанию в них пользовательских изменений {#adding-third-party-libraries} ## Рекомендации по добавлению сторонних библиотек и поддержанию в них пользовательских изменений {#adding-third-party-libraries}
1. Весь внешний сторонний код должен находиться в папке `contrib` в отдельных поддиректориях репозитория ClickHouse. По возможности используйте подмодули Git. 1. Весь внешний сторонний код должен находиться в папке `contrib` в отдельных поддиректориях репозитория ClickHouse. По возможности, используйте подмодули Git.
2. Клонируйте официальный репозиторий [Clickhouse-extras](https://github.com/ClickHouse-Extras). Используйте официальные репозитории GitHub, если они доступны. 2. Клонируйте официальный репозиторий [Clickhouse-extras](https://github.com/ClickHouse-Extras). Используйте официальные репозитории GitHub, если они доступны.
3. Создайте новую ветку на основе той ветки, которую вы хотите интегрировать: например, `master` -> `clickhouse/master`, or `release/vX.Y.Z` -> `clickhouse/release/vX.Y.Z`. 3. Создайте новую ветку на основе той ветки, которую вы хотите интегрировать: например, `master` -> `clickhouse/master` или `release/vX.Y.Z` -> `clickhouse/release/vX.Y.Z`.
4. Все форки в [Clickhouse-extras](https://github.com/ClickHouse-Extras) может быть автоматически синхронизированы с upstreams. Ветки `clickhouse/...` останутся незатронутыми, поскольку практически никто не будет использовать этот шаблон именования в своих репозиториях выше по потоку. 4. Все форки [Clickhouse-extras](https://github.com/ClickHouse-Extras) можно автоматически синхронизировать с upstreams. Ветки `clickhouse/...` останутся незатронутыми, поскольку практически никто не будет использовать этот шаблон именования в своих репозиториях выше по потоку.
5. Добавьте подмодули в папку `contrib` репозитория ClickHouse, на который ссылаются вышеуказанные форки/зеркала. Настройте подмодули для отслеживания изменений в соответствующих ветках `clickhouse/...`. 5. Добавьте подмодули в папку `contrib` репозитория ClickHouse, на который ссылаются вышеуказанные форки/зеркала. Настройте подмодули для отслеживания изменений в соответствующих ветках `clickhouse/...`.
6. Каждый раз, когда необходимо вносить пользовательские изменения в код библиотеки, следует создавать специальную ветвь, например `clickhouse/my-fix`. Затем эта ветка должна быть влита в ветку, отслеживаемую подмодулем, например, `clickhouse/master` или `clickhouse/release/vX.Y.Z`. 6. Каждый раз, когда необходимо внести пользовательские изменения в код библиотеки, следует создавать отдельную ветку, например `clickhouse/my-fix`. Затем эта ветка должна быть влита в ветку, отслеживаемую подмодулем, например, `clickhouse/master` или `clickhouse/release/vX.Y.Z`.
7. Не добавляйте код в форки [Clickhouse-extras](https://github.com/ClickHouse-Extras), если имя форка 7. Не добавляйте код в форки [Clickhouse-extras](https://github.com/ClickHouse-Extras), если имя форка
не соответствует шаблону `clickhouse/...`. не соответствует шаблону `clickhouse/...`.
8. Всегда добавляйте пользовательские изменения с учетом официального репозитория. После того как PR будет объединен из (ветки функций/исправлений) вашего личного форка в [Clickhouse-extras](https://github.com/ClickHouse-Extras) и подмодуль будет добавлен в репозиторий ClickHouse, следующие PR из (ветки функций/исправлений) делайте на форке [Clickhouse-extras](https://github.com/ClickHouse-Extras) в официальном репозитории библиотеки.Это позволит убедиться, что: 1) публикуемый код имеет несколько вариант использования и важность; 2) другие пользователи также могут использовать его в своих целях; 3) поддержка кода доступна не только разработчикам ClickHouse. 8. Всегда добавляйте пользовательские изменения с учетом официального репозитория. После того как PR будет объединен из (ветки функций/исправлений) вашего личного форка [Clickhouse-extras](https://github.com/ClickHouse-Extras) и подмодуль будет добавлен в репозиторий ClickHouse, следующие PR из (ветки функций/исправлений) делайте на форке [Clickhouse-extras](https://github.com/ClickHouse-Extras) в официальном репозитории библиотеки.Это позволит убедиться, что: 1) публикуемый код имеет несколько вариант использования и важность; 2) другие пользователи также могут использовать его в своих целях; 3) поддержка кода доступна не только разработчикам ClickHouse.
9. Чтобы подмодуль начал использовать новый код из исходной ветви (например, `master`), сначала следует выполнить тщательное слияние (`master` -> `clickhouse/master`), и только после этого подмодуль можно будет интегрировать в ClickHouse. Это связано с тем, что пользовательские изменения могут быть объединены в отслеживаемой ветке (например, `clickhouse/master`) и поэтому он может отличаться от своего первоначального аналога (`master`). 9. Чтобы подмодуль начал использовать новый код из исходной ветки (например, `master`), сначала следует аккуратно выполнить слияние (`master` -> `clickhouse/master`) и только после этого подмодуль можно будет интегрировать в ClickHouse. Это связано с тем, что пользовательские изменения могут быть объединены в отслеживаемой ветке (например, `clickhouse/master`) и поэтому ветка может отличаться от своего первоначального аналога (`master`).