tipos - ¿Cómo puedo crear una etiqueta de git en TeamCity?
tipos de etiquetas en git (4)
- Vaya a Editar configuraciones de configuración -> Configuración de control de versiones
Para todas sus raíces de VCS para esta configuración de compilación, haga clic en Editar y luego en:
- poner ''+: refs / tags / *'' en el cuadro de texto de especificación Branch
- marca Usar etiquetas como ramas
Luego podrá elegir una etiqueta cuando presione el botón ''...'' al lado de ejecutar.
Quiero proporcionar una etiqueta de git al servidor de TeamCity para construirlo. Paso la etiqueta (es decir, release_1.1
) como un parámetro para el trabajo. Así que dentro del trabajo, la etiqueta está disponible como %tag%
, pero en la Version Control Settings
no veo ninguna forma de utilizar este parámetro para que el servidor pueda realizar el pago de esta etiqueta. ¿Hay alguna forma de que este parámetro se pueda usar en la configuración para pagar la etiqueta?
Debe especificar el formato de etiqueta en refs/tags/${tagName}
.
Así que los tuyos serían refs/tags/release_1.1
.
Me las he arreglado para conseguir el siguiente trabajo:
En Build Configuration, en "Build Parameters":
Definir un parámetro de configuración :
- Nombre:
TagToBuild
- Tipo:
Configuration parameter
- Valor:
- Especulación:
- Etiqueta:
Tag to build
- Descripción:
This should be the full path to the tag, ie refs/tags/0.5.5
- Pantalla:
Prompt
- Tipo:
Text
- Etiqueta:
Tenga en cuenta que el campo "valor" se dejó en blanco intencionalmente.
Luego, en la raíz de VCS:
- Nombre de la sucursal:
%TagToBuild%
Cuando ejecuto la compilación, me piden que proporcione un nombre de rama / etiqueta:
Ingresar un valor como refs/tags/0.5.0
resulta en una buena compilación, con el nombre de la rama en los resultados:
Si intenta ayudar al usuario de alguna manera más allá de la descripción, esto parece fallar. Entonces no puedes hacer nada de lo siguiente:
- En el parámetro de configuración, configure el "valor" para
refs/tags/
y haga que el usuario agregue el nombre de la etiqueta. - En la raíz de VCS configure el "Nombre de la sucursal" para
refs/tags/%TagToBuild%
.
En ambos casos en nuestra instancia un poco antigua (7.1) de Team City, recibí el error:
Error al recopilar cambios, error: Argumento 2 para el parámetro @NotNull de jetbrains / buildServer / buildTriggers / vcs / VcsRootChangesLoader.loadChanges no debe ser nulo
No he hecho esto con las etiquetas, pero he hecho esto con las ramas. Le digo a TeamCity que cree todas las ramas especificando que debería compilar +:refs/heads/*
. Ahora cada vez que presiono cualquier rama, TeamCity la construye. Luego, dentro de la compilación, uso la git branch
y busco la línea que comienza con un *
. Incruste ese nombre de rama en un lugar conveniente (AssemblyInfo.cs para .NET, package.json para el nodo.) Vea http://confluence.jetbrains.com/display/TCD8/Working+with+Feature+Branches