Crear un repositorio en GitHub
Clona el repositorio en tu equipo de desarrollo
ClickHouse/ que contiene el código fuente, las pruebas y otros archivos.
Puede especificar un directorio personalizado para el checkout después de la URL, pero es importante que esta ruta no contenga espacios en blanco, ya que esto podría hacer que la compilación falle más adelante.
El repositorio Git de ClickHouse usa submódulos para incluir bibliotecas de terceros.
Los submódulos no se descargan de forma predeterminada.
Puede hacer una de las siguientes cosas:
-
ejecutar
git clonecon la opción--recurse-submodules, -
si ejecuta
git clonesin--recurse-submodules, ejecutegit submodule update --init --jobs <N>para descargar explícitamente todos los submódulos. (<N>puede establecerse, por ejemplo, en12para paralelizar la descarga). -
si ejecuta
git clonesin--recurse-submodulesy quiere usar un checkout superficial shallow de los submódulos para omitir su historial y ahorrar algo de espacio, ejecute./contrib/update-submodules.sh. CI usa esta alternativa, pero no se recomienda para el desarrollo local, ya que hace que trabajar con submódulos sea menos cómodo y más lento.
git submodule status.
Si recibe el siguiente mensaje de error
~/.ssh.
Para que se acepten las claves SSH, debes subirlas a la configuración de GitHub.
También puedes clonar el repositorio mediante HTTPS:
git remote.
También puedes añadir la dirección original del repositorio de ClickHouse a tu repositorio local para obtener actualizaciones desde allí:
git pull upstream master.
Escribir código
- Arquitectura de ClickHouse.
- Guía de estilo de código.
- Bibliotecas de terceros
- Cómo escribir pruebas
- Incidencias abiertas
IDE
- CLion crea por su cuenta una ruta
buildy selecciona automáticamentedebugcomo tipo de compilación - Usa una versión de CMake definida en CLion, no la que hayas instalado tú
- CLion usará
makepara ejecutar tareas de compilación en lugar deninja(este es el comportamiento normal)
Crear un pull request
Redactar la documentación
mint dev desde docs/).
Al agregar una nueva función a ClickHouse, puedes usar la siguiente plantilla como guía: