Mantenga un registro de los cambios de código al vincular sus commits con sus tareas e historias de usuario.
Principios
Esta función se divide en varias Apps dependiendo de su sistema de control de versiones. Es posible que también esté interesado en la función Integración continua.
Primero, un ejemplo. Asumiendo que soy responsable de la tarea 18 en iceScrum llamada «Add car domain», una vez que el código está listo para enviar, escribo mi mensaje de confirmación:
New car domain class
Aquí es cómo relaciono este commit con la Tarea 18:
T18 New car domain class
El identificador T18 puede ubicarse en cualquier parte del mensaje de commit, por lo que es equivalente al mensaje de confirmación anterior:
New car T18 domain class
Una vez que se envía el commit, la información para esta confirmación se mostrará en los detalles de la Tarea 18 en una pestaña dedicada:
Para cada commit, se muestra esta información:
Autor: si el autor del commit es reconocido en iceScrum (nombre de usuario, nombre completo, correo electrónico), la confirmación se asocia con el usuario iceScrum correspondiente.
Mensaje: los identificadores de tareas se eliminan del mensaje original para hacerlo más legible.
Fecha: la fecha de commit.
Archivos: los archivos agregados, eliminados y modificados en su confirmación.
Puede hacer referencia a tantas tareas como necesite en su mensaje de commit:
New business object: supplier T21 T22 T23
Los commits se asocian a una tarea solo si su sprint está «En progreso».
Commits e historias
La vista de detalles de la historia también proporciona una pestaña de «Commits» que suma todos los commits de sus tareas.
Actualizar el tiempo restante de la tarea
Opcionalmente puede actualizar el tiempo restante de la tarea desde su mensaje de commit.
En este ejemplo, actualizo el tiempo restante de la tarea 21 a 1 hora y media, tarea 22 a 3 horas y no queda trabajo en la tarea 23, así que actualizo su tiempo restante a 0:
New business object: supplier T21-1.5 T22-3 T23-0
El tiempo restante se actualiza en consecuencia y la tarea 73 no tiene tiempo restante, por lo que se ha movido a «Terminada»:
Estas son las reglas de actualización:
Si el nuevo tiempo restante es positivo y la tarea no está Terminada, el tiempo restante se actualiza en consecuencia.
Si el nuevo tiempo restante no está especificado o es positivo y la tarea es «En espera», la tarea se mueve a «En progreso».
Si el nuevo tiempo restante es 0, la tarea se mueve a «Terminada».
Link one code repository to multiple iceScrum projects
Starting from iceScrum 7.27, it is possible to link commits from one repository to several iceScrum projects.
This documentation illustrates mainly the simple case where there is only one project and the project is provided once for all through the URL configured to communicate with iceScrum. Thus, for multiple projects the first step consists in leaving out this project part (i.e. /project/$project) from the URL in all the examples provided in this documentation.
If you use the provided Git or SVN scripts then you will have to edit the code manually in order to build an URL that leaves out this part. Otherwise, just adapt the URL you enter.
E.g. for Gitlab, instead of: /ws/project/MYPROJECTKEY/commit/gitlab
Use: /ws/commit/gitlab
However, iceScrum still needs to know which project to attach a commit to. Thus, all task tags should be prefixed by the project key of the project they belong to:
New car MYPROJECTKEY-T18 domain class
Git
Primero, habilite la App Git en su proyecto.
Para conectar su repositorio de Git al proyecto IceScrum correspondiente, debe agregar un script de post-recepción en el directorio YOUR-REPO/.git/hooks/.
Puede escribir su propio script, pero le recomendamos usar este: post-receive. Este script se engancha en hooks recibidos por un repositorio de Git.
Este ejemplo establece la configuración solo para el repositorio actual (las configuraciones se escriben en el archivo .git/config). Si desea aplicarlos a todos los repositorios del usuario actual, utilice la opción global (la configuración global está escrita en el archivo ~/.gitconfig).
SVN
Primero, habilite la App SVN en su proyecto iceScrum.
Para conectar su repositorio SVN al proyecto iceScrum correspondiente, debe agregar un script post-commit en su servidor, en el directorio YOUR-REPO/hooks/.
Puede escribir su propio script, pero le recomendamos utilizar este: post-commit.
Opcionalmente puede configurar la URL de SVN si usa una herramienta basada en web:
svnviewer_url = "http://svnviewer/svn-history/"
GitHub
Primero, habilite la App GitHub en su proyecto iceScrum.
Aviso: el servicio integrado de GitHub para iceScrum solo es compatible con iceScrum R6. Para la integración entre GitHub e iceScrum v7, simplemente agregue un webhook a su repositorio GitHub como se describe a continuación.
Agregue un webhook a su repositorio de GitHub. En la pestaña «Configuración» de su repositorio GitHub, en la sección «Webhooks», haga clic en «Agregar webhook».
La URL de carga útil está construida de esta manera:
Suponiendo que tiene un proyecto con la clave MYPROJECTKEY, la URL del punto final es la URL de su servidor iceScrum seguido de: /ws/project/MYPROJECTKEY/commit/gitlab
He aquí un ejemplo de la URL a configurar si utiliza iceScrum Cloud: https://cloud.icescrum.com/ws/project/MYPROJECTKEY/commit/gitlab
A partir de iceScrum 7.42, debe proporcionar su token iceScrum en la cabecera X-Gitlab-Token. El token debe haber sido generado por un usuario de iceScrum que tiene acceso al proyecto.
Visual Studio Team Services
Benefit from a full scope integration between iceScrum and Visual Studio Team Services with a set of dedicated iceScrum Apps:
VSTS work items: Create iceScrum stories from VSTS work items.
You can link commits/changesets in Visual Studio Team Service to your tasks and stories in iceScrum. It works both for Git and Team Foundation Version Control.
There are 2 ways to configure your Visual Studio Team Service environment. The preferred way is to use the iceScrum extension.
The iceScrum extension for VSTS only works with SSL secured iceScrum servers (the url must start with https). If your server is not secured, you can still integrate VSTS commits with iceScrum by using a custom service hook (see next section).
Simply add a Service Hook to your VSTS project. In the Settings tab of your VSTS project, under the Service Hook section, click on Create Subscription.
Select iceScrum in the list of service and click next.
You can optionally filter which repositories and branch commits/changesets should be pushed to iceScrum.
On the next screen you are asked for connection settings. The iceScrum API URL is built this way:
$server/ws/project/$project/commit/vsts
server: the URL of your iceScrum server. For iceScrum cloud instances it is
Test, save the Web Hook and that’s it.
The test request should return an HTTP 204 status response, because the test commit does not include any reference to an iceScrum task in its message.
with a service web hook
If your iceScrum server is secured (the url starts with https), then the preferred way to configure VSTS is to use the iceScrum extension.
Simply add a service Web Hook to your VSTS project. In the «Settings» tab of your VSTS project, under the «Service Hook» section, click on «Create Subscription».
Select «Web Hooks» in the list of service and click next. Select event of type «Code Pushed». You can optionally filter which repositories and branch commits/changesets should be pushed to iceScrum.
On the next screen you are asked for connection parameters. The Web Hook URL is built this way:
$server/ws/project/$project/commit/vsts
server: the URL of your iceScrum server. For iceScrum cloud instances it is