Está en la página 1de 16

GUÍA PARA LA GESTIÓN DE CONTROL DE CÓDIGO FUENTE

Oficina de Tecnologías y sistem as de Información


Grupo de Gestión de Sistemas de Información

Departam ento Nacional de Planeación


Bogotá, 2020
C O D IG O :
DN P
GUIA PARA LA GESTIÓN DE CONTROL
El f u t u r o
es d e to d o s
Departamento
Nacional de Planeación DE CÓDIGO FUENTE PAGINA: 2 de 16
VERSIÓN:

Control de Versiones

Versión Fecha Descripción Autores


0 15-09-2020 Elaboración del César Augusto Gómez Perilla
documento.

Derechos de Autor: La elaboración de este docum ento y sus diferentes com ponentes estuvo a cargo del Grupo de
Gestión de Sistemas de Información de la Oficina de Tecnologías y Sistemas de Información del Departamento
Nacional de Planeación, D N P, razón por la cual los Derechos de Autor y en lo particular los derechos patrimoniales
de este docum ento y su contenido pertenece exclusivam ente al DNP. Por lo tanto, su uso y reproducción por terceros,
está sujeto a la autorización expresa de la Oficina de Tecnologías y Sistem as de Información, OTSI del DNP en
cumplim iento de la Ley 23 de 1982 y demás que la modifican o adicionan. Siendo así, este docum ento está protegido
por Derechos de Autor y no pueden ser copiados, ni reproducidos, ni distribuidos por personas o Entidades diferentes
al DNP.
C O D IG O :
GUIA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PAGINA: 3 de 16
VERSIÓN:

TABLA DE CONTENIDO
1. OBJETIVO....................................................................................................................................4
2. ALCANCE.....................................................................................................................................4
3. TÉRMINOS Y DEFINICIONES...................................................................................................4
4. G IT................................................................................................................................................. 5
4.1 Configuración del G IT ........................................................................................................ 5

4.2 Clonación del rep ositorio.................................................................................................. 5

4.3 Ubicarse en el directorio del repositorio.........................................................................6

4.4 Creación de la rama de desarrollo “ develop” ............................................................... 6

4.5 Historias de usuario............................................................................................................ 7

4.6 Ramas puntuales.................................................................................................................. 8

4.7 Adicionar, m odificar y comentar sobre el desarrollo..................................................8

4.8 Sincronización rama <puntual> con la rama “ develop” .............................................. 9

4.9 Subir los cam bios al repositorio.......................................................................................9

5. TFS V C ....................................................................................................................................... 11
5.2 Configuración la ruta lo c a l ..............................................................................................11

5.3 Incluir el proyecto al repositorio asignado.................................................................. 11

5.4 Sincronizar código fuente al repositorio....................................................................... 12

5.5 Visualización del repositorio en Azure D evO ps Server........................................... 13

5.6 Creación de la rama desarrollo “ develop” ................................................................... 13

5.7 Creación de ramas puntuales.......................................................................................... 15

5.8 Sincronización rama <puntual> con la rama “ develop” ............................................ 15

O ficina de Tecnologías y S istem as de Información


C O D IG O :
GUIA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PAGINA: 4 de 16
VERSIÓN:

1. OBJETIVO

En el presente documento tiene como objetivo dar a conocer el procedimiento en la gestión de control de código
fuente en la elaboración y ejecución de un proyecto dentro del Grupo de Gestión de Sistem as de Información
del Departamento Nacional de Planeación - DNP.

2. ALCANCE

Brindar una guía para ser aplicada desde los roles Líder Técnico, Líder de Desarrollo o quién designe el Jefe
de la dependencia o en su defecto la firm a externa contratada si aplica.

3. TÉRMINOS Y DEFINICIONES

- Control de versiones. Corresponde a la gestión de los diversos cambios que se realizan sobre
elem entos de algún producto.

- GIT. Es un software de control de versiones, pensado en la eficiencia y la confiabilidad del


m antenimiento de versiones.

- TFS VC. Ayuda a la gestión de equipos de manera colaborativa, también ofrece control de versiones
sobre los desarrollos.

- Ramas. Es un control de versiones que registra los cambios realizados a lo largo del tiempo, de modo
que puede recuperar versiones especificas más adelante. Por defecto se tiene una rama llamada
"m aster” que es la versión estable del producto.

- Ramas puntuales. Tiene la misma característica que la rama pero su ciclo de vida llega hasta cuando
se fusiona con otra rama, elim inándola del control de versiones.

- Épica. Una Épica puede ser vista como una historia de usuario de alta complejidad (petición de
negocio de alto nivel y complejidad). Para elaborarla se puede requerir un esfuerzo muy grande y no
puede ser cubierta en un Sprint. Una épica debido a su gran tamaño es difícil de estimar y de abordar,
así que es necesario descom ponerla en varias características e historias. Im plem entar una épica suele
llevar dos o más sprints.

- Historia de Usuario. Una historia de usuario representa una necesidad de negocio que puede ser
implem entada en un sprint y aporta valor al producto. Al final del sprint la historia añade una nueva
funcionalidad o característica al producto y puede ser candidata para pasar a producción.

O ficina de Tecnologías y S istem as de Información


C O D IG O :
GUIA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PAGINA: 5 de 16
VERSIÓN:

4. PRE-REQUISITOS

En Azure DevOps Server maneja perm isos como "Readers” , "Contributors” y "Adm inistrators” en los
repositorios, en este caso, se debe tener en cuenta que el Líder de Desarrollo o quién designe el Jefe de la
dependencia o en su defecto la firm a externa contratada si aplica, debe m anejar el permiso de "Contributors” .

Para cualquier sistem a de control de versiones m oderno tiene algún mecanismo para soportar el uso de ramas.
Cuando se habla de ramificaciones, significa que se tom a la rama principal de desarrollo (master) y a partir de
ahí continúa trabajando sin seguir la rama principal de desarrollo. Para este caso se m anejará la rama
"m aster” (producción), "qa” (pruebas), "develop” (desarrollo), "tb-n” (historias de usuario), según la figura 1.

Teniendo en cuenta lo anterior se explicará el versionam iento de código fuente desde GIT y TFSVC.

5. GIT

4.1 Configuración del GIT

Se debe inicializar y configurar el nombre y correo de quien realizará el control de versiones. Ver figura 2.

Cesars-M acBook-Pro:repositorios cesargomezperilla$ g i t i n i t


R e in itia liz e d e x is tin g G it rep ository in /Applications/XAM PP/xam ppfiles/htdocs/repositorios/.git/
Cesars-M acBook-Pro:repositorios cesargom ezperillaí g i t config user.name "Cesar Gómez P e r illa "
Cesars-MacBook-Pro: rep o sito rio s cesargom ezperillaí g i t config user.em ail " cesgomez@dnp.gov.co"
Cesars-M acBook-Pro:repositorios cesargom ezperillaí |

Figura 2. Configuración del GIT

4.2 Clonación del repositorio

Para la clonación del repositorio se requiere tener las credenciales y perm isos dados por el Líder Técnico del
Grupo de Gestión de Sistem as de Información del Departamento Nacional de Planeación.

Una vez tenga los permisos, ingresa a la terminal y clona el repositorio como se ve en la figura 3.

O ficina de Tecnologías y S istem as de Información


C O D IG O :
GUIA PARA LA GESTION DE CONTROL
El futuro
r in
es d e to a o s
Departamento
Nacional de Planeación DE CÓDIGO FUENTE PAGINA: 6 de 16
VERSIÓN:

repositorios

[js e rn a m e

Gít: https://tfs.d n p .g o v.c o (Press 'E n ter' to co n firm o r 'E scape' to cancel)

PR O BLEM S 1K+ O U TPU T DEBUG CO NSO LE T ER M IN A L 1: git

C e s a rs -M a c B o o k -P ro :re p o s ito r io s c e s a rg o m e z p e rilla S g i t c lo n e h t t p s : / / t f s . d r p . g o v . c o /D N P -In te rn a /G G S I.P ru e b a P ilo to _ P H P /_ g it/G G S I.P ru e b a P ilo to _ P H P


C lo n in g i n t o 'G G S I.P ru e b a P ilo to _ P H P '. . .

C e s a rs -M a c B o o k - P r o :r e p o s ito rio s c e s a r g o m e z p e rilla S g i t c lo n e h t t p s ; / / t f s . d n p .g o v .c o /D N P - In te rn a /G G S I.P ru e b a P ilo to _ P H P /_ g it/G G 5 I,P ru e b a P ilo to _ P H P


C lo n in g i n t o 'G G 5 I.P ru e b a P ilo to _ P H P '. . .
re m ó te : A z u re Repos
re m ó te : Found 47 o b je c t s t o s e n d . (1 1 2 ms)
U n p a c k in g o b je c t s : 100% ( 4 7 /4 7 ) , done .
C e s a rs -M a c B o o k - P r o :r e p o s ito rio s c e s a r g o m e z p e rilla $ |

Figura 3. Clonación del proyecto

4.3 Ubicarse en el directorio del repositorio

Una vez se clone el repositorio a su terminal local, de debe ubicar en el directorio y con el comando de "log”
puede ver el detalle de quienes han hecho "commit” al proyecto. Ver figura 4.

• • • indffií.php — GGSl .Prueba P iloto.PHP

0 EXPLORER

v OPEN EDITO RS
* * index.php X

w in d e x .p h p > ...

p X W index.php
V GGSI.PRUEBAPILOTO.PHP 1
2
Cesar Gómez, 13 days ago 11 author (Cesar Gómez)
@!DOCTYPE h t m lg
< h tm l la n g = " e n " >
* in d e x .p tip
p © RE A D M E .m d
3
4
<h ea d>
< m e ta c h a r s e t= " U T F - 8 " >
5 < m e ta n g m e = " v ie w p o r t" c o n t e n t = " w i d t h = d e v i c e - ii r id t h , i n i t i a l - s c a l e = l . 0 " >
6 < t it l e > P r u e b a d e c o n e e p t o < / t it le >
8 7 < /h e a d >
8 <body>
9 <p>E& u n a p r u e b a < /p >
a ?
10 < /b o d y >
11 « = /h tm l>

x -
PROBLEMS OUTPUT DEBUG CONSOLE TERMINAL 1:bash

$
T h e d e f a u l t i n t e r a c t i v a s h e l l i s now z s h .
T o u p d a te y o u r a c c o u n t t o u s e z s h , p le a s e r o n " c h s h - s / b i n / z s h " .
F o r m ore d e t a i l s , p le a s e v i s i t h t tp s : //s u p p o r t.a p p le .c o m /k b / H T 2 0 B fl5 6 .
* C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a r g o m e z p e r illa S g i t lo g — p r e t t y = o n e li n e
a 4 e 0 5 9 d f f8 f 5 0 4 6 1 7 4 a llb 4 b b 3 b lfd 4 b f7 0 38 45 9 ÍHEAD - > m a s te r , o r i g i n / m a s t e r , o r ig in / H E flD ) S e i n i c i a l i z a e l p r o y e c to e n l a ram a d e s a r r o l l o
6 a 5 2 1 3 c d 6 6 d 7 2 2 1 4 2 7 d l2 3 fa b d a 7 4 f2 a 2 8 4 d f4 9 e A dded README.md f i l e
57 C e s a rs -M a c B o o k -P ro :G G S I,P ru e b a P ilo to _ P H P c e s a r g o m e z p e r illa S |

Figura 4. Trazabilidad de los com entarios del proyecto

4.4 Creación de la rama de desarrollo “develop”

Para iniciar la codificación se debe crear la rama con el nombre "develop”, el cual se hará todas las integraciones
de las historias de usuario del proyecto, para los desarrolladores puedan trabajar sin ningún problem a y
desplegar los avances. Ver figura 5.

O ficina de Tecnologías y S istem as de Información


El futuro
r in Departamento
es d e to a o s Nacional de Planeación

PROBLEMS OUTPUT DEBUG CONSOLE TERMINAL 1:bash

T h e d e f a u l t i n t e r a c t i v e s h e l l i s now z s h .
T o u p d a te y o u r a c c o u n t t o u s e z s h , p le a s e r u n 'c h s h - s / b i n / z s h ' .
F o r m o re d e t a i l s , p le a s e v i s i t h t t p s : / / s u p p o r t . a p p l e . c o m / k b / H T 2 0 8 0 5 0 .
C e s a rs -M a c B o o k - P ro :G G S I.P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t lo g — p r e t t y = o n e l i n e
a 4 e 0 5 9 d ff8 f 5 0 4 6 1 7 4 a llb 4 b b 3 b lf d 4 b f 7 0 3 8 4 5 9 (HEAD - > m a s t e r , o r i g i n / m a s t e r , o r ig in /H E A D ) Se i n i c i a l i z a e l p ro y e c to en la rama d e s a r r o l l o
6 a 5 2 1 3 c d 6 6 d 7 2 2 1 4 2 7 d l2 3 fa b d a 7 4 f2 a 2 8 4 d f4 9 e A d d e d README.md f i l e
C e s a rs -M a c B o o k - P r o :G G S Ip P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t b r a n c h
* m a s te r
C e s a rs -M a c B o o k - P ro :G G S I.P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t b r a n c h d e v e lo p
C e s a rs -M a c B o o k - P ro :G G S I.P r u e b a P ilo to _ P H P c e s a r g o t n e z p e r illa $ g i t b r a n c h
d e v e lo p
* m a s te r
C e s a rs -M a c B o o k -P ro :G G S l.P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t c h e c k o u t d e v e lo p
S w itc h e d t o b r a n c h 'd e v e l o p '
C e s a rs -M a c B o o k - P ro :G G S I.P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t b r a n c h
* d e v e lo p
m a s te r
C e s a rs -M a c B o o k -P ro :G G S l.P r u e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ |

Figura 5. Creación de la rama "develop”

Luego de crear la rama, se debe m over sobre ella con el comando "checkout <rama>”

4.5 Historias de usuario

Se debe revisar las historias de usuario asignadas al desarrollador, para ello en DevOps en la sección
"Boards/Plans” encontrará las historias asignadas. Ver figura 6 y 7.

Figura 6. Historias de usuario en el planeador

O ficina de Tecnologías y S istem as de Información


C O D IG O :
GUIA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PAGINA: 8 de 16
VERSIÓN:

Figura 7. Historias de usuarios asignados

4.6 Ramas puntuales

Una vez este sobre la rama "develop”, según la historia de usuario asociado en DevOps, se debe crear una
rama especifica, Ejemplo: Para el caso anterior se tom ará la historia de usuario #31366 Verificar los reportes.
Ver figura 8.

C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa í g i t branch tb -3 1 3 6 6


C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa í g i t branch
* de ve lop
m aster
tb -3 1 3 6 6
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa í g i t checkout tb -3 1 3 6 6
S w itch e d t o branch 't b -3 1 3 6 6 1
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa í g i t branch
de ve lop
m aster
* tb -3 1 3 6 6
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa í |

Figura 8. Ram as puntuales de desarrollo.

4.7 Adicionar, m odificar y com entar sobre el desarrollo

El desarrollador una vez termine su labor debe incluir su trabajo en la rama <puntual>, ya sea con nuevos
archivos o actualizando los existentes. Se recom ienda que en los com entarios hacer referencia a que
requerim iento funcional puntuales. Ver figura 9.

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA PARA LA GESTIÓN DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PÁGINA: 9 de 16
VERSIÓN:

C e s a rs -M a c B o o k -P ro :G G S I,P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa $ g i t b ra n c h


d e v e lo p
m a s te r
* tb -3 1 3 6 6
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t s ta tu s
on b ra n c h tb -3 1 3 6 6
Changes n o t s ta g e d f o r c o m m it:
{u s e " g i t add < f i l e > . . . " t o u p d a te w h a t w i l l be c o m m itte d )
{u s e " g i t r e s t o r e < f i l e > . . . " t o d is c a r d chan ges i n w o rk in g d ir e c t o r y )
m o d ifie d : in d e x .p h p

no chan ges added t o com m it (u s e " g i t a d d " a n d / o r " g i t com m it - a " )


C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t add .
C e s a rs -fla c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa $ g i t commet -m "S e e la b o r ó e l d e s a r r o llo de l a h i s t o r i a de u s u a r io v e r i f i c a r r e p o r te s "
g i t : 'c o m m e t' i s n o t a g i t command. See ' g i t — h e lp '.

The m ost s i m i l a r command i s


com m it
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a r g o m e z p e r illa $ g i t com m it -m "S e e la b o r ó e l d e s a r r o llo de l a h i s t o r i a de u s u a r io v e r i f i c a r r e p o r te s "
[tb -3 1 3 6 6 b 5 7 6 3 c l] Se e la b o r ó e l d e s a r r o llo de l a h i s t o r i a de u s u a r io v e r i f i c a r r e p o r te s
1 f i l e c h a n g e d , 1 in s e r t io n < + ) , 1 d e l e t i o n ( - )
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa $ g i t s ta tu s
On b ra n c h tb -3 1 3 6 6
n o th in g t o c o m m it, w o r k in g t r e e c le a n
C e s a rs -M a c B o o k -P ro :G G S I.P ru e b a P ilo to _ P H P c e s a rg o m e z p e r illa $ |

Figura 9. Trazabilidad de los comentarios

4.8 Sincronización rama <puntual> con la rama “develop”

Una vez term inado de desarrollar sobre la rama <puntual>, debe realizar la integración con la función "merge”
con la rama "develop” . Ver figura 10.

Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperilla$ g i t checkout develop


Switched to branch 'develop'
Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperilla$ g i t merge tb-31366
Updating a4e059d..b5763cl
Fast-forw ard
index.php | 2 +­
1 f i l e changed, 1 in s e r t io n {+ ), 1 d e le t io n (-)
Cesars-MacBook-Pro:GGSI.PruebaPíloto_PHP cesargomezperilla$ g i t commit -m "Se re a liza e l merge con la rama tb-31366"
On branch develop
nothing to commit, working tree clean
Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperilla$ |

Figura 10. Integración entre ramas.

4.9 Subir los cam bios al repositorio

Luego de tener el desarrollo debe sincronizar el trabajo que tiene en la terminal local a repositorio en DevOps.
Ver figura 11 y 12.

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA PARA LA GESTIÓN DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PÁGINA: 10 de 16
VERSIÓN:

Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperillaí g it push


fa ta l: The current branch develop has no upstream branch.
To push the current branch and set the remóte as upstream, use

g it push — set-upstream o rig in develop

Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperillaí g it push — set-upstream o rig in develop


Enumerating objects: 5, done.
Counting objects: 100% (5/5 ), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3 /3 ), done.
W riting objects: 100% (3 /3 ), 417 bytes | 417.00 KiB/s, done.
To ta l 3 (delta 1 ), reused 0 (delta 0)
remóte: Analyzing o b je c ts ... (3/3) (8 ms)
remóte: Storing p a c k f ile ... done (47 ms)
remóte: Storing index done {48 ms)
To https://tfs.dnp.gov.co/DNP-Interna/GGSI.PruebaPiloto_PHP/_git/GGSI.PruebaPiloto_PHP
* [new branch] develop -> develop
Branch 'develop' set up to track remóte branch 'develop' from 'o r i g i n '.
Cesars-MacBook-Pro:GGSI.PruebaPiloto_PHP cesargomezperillaí |

Figura 11. Sincronización al repositorio DevOps

Figura 12. Visualización de la sincronización en DevOps

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA PARA LA GESTIÓN DE CONTROL
El futuro
« o r in
es de todos
Departamento
Nacional de Planeación DE CÓDIGO FUENTE PÁGINA: 11 de 16
VERSIÓN:

6. TFS VC

5.2 Configuración la ruta local

Configurar la ruta del proyecto que se encuentra Azure DevOps Server para trabajar en ambiente local. Debe
seleccionar el proyecto y relacionar la carpeta local como se ve en la figura 13.

Exp lo ra d o r d e con trol d e c ó d ig o fuente -fl X

[a]^ G & s. “> ! 5 ) © V - Área d e trabajo: DNPDP44346

U b ica ció n d e origen: I Í J 6G SI.Pru e b aP ilo to_P H P

Figura 13. Asignar ruta local

5.3 Incluir el proyecto al repositorio asignado

Para incluir el proyecto debe dar clic derecho, en la opción "Agregar elem entos a carpeta” y seleccionar el
código que quiere agregar al control de código fuente. Ver en la figura 14 y 15.

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA p a r a l a g e s t ió n d e c o n t r o l
El futuro
« o r in
es de todos
Departamento
Nacional de Planeación DE CÓDIGO FUENTE PÁGINA: 12 de 16
VERSIÓN:

Á rea d e tra b a jo : DNPDP44346 o ta t ó


Página principal
R uta d e acce so local; J A z u r e D e v O p s S e rv e

G G S I.P rue b a
N o m b re C a m b io p e n d ie ... U su a rio Ú ltim a Ú ltim a inse rció ...
LJ h
É jo b j Sí 12/03/2020 03

Pages Sí 12/03/2020 03

Prop e rtie s Sí 12/03/2020 03

d w w w ro o t Sí 12/08/2020 03

¿ T a p p se ttrn g s .D e v e lo p m e n t.js ... Sí 12/08/2020 03

£ T a p p se ttin g s.jso n Sí 12/08/2020 03

c* P ro g ra m .c s Sí 12/08/2020 08

c* S ta rtu p .c s Sí 12/08/2020 08

|c*] W e b A p p .c s p ro j Sí 12/08/2020 08

■g N u e v a carpeta

+L l A g re g a r e le m e n to s a carpeta...

R a m a y c o m b in a c ió n

B u s ca r

A vanzadas

Figura 14. Agregar elem entos a carpeta

Figura 15. Agregar a control de código fuente

5.4 Sincronizar código fuente al repositorio

El desarrollador una vez termine su labor debe incluir su trabajo en el repositorio, ya sea con nuevos archivos

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA PARA LA GESTIÓN DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PÁGINA: 13 de 16
VERSIÓN:

o actualizando los existentes. Se recom ienda que en los com entarios hacer referencia a que requerim iento
funcional puntuales. Ver figura 16.

Team Explorer - Cambios pendientes - ? X

O O A ¥ Ó Buscar elementos de trabajo (C trl*{) P '

C am bios pend ientes G G S i.e b A p p

a Comentario

Sincronizar código fuente al repositorio

a Elementos de trabajo relacionados

Arrastre aquí elementos de trabajo |

a Cambios incluidos (1)

<< O E:\vscode\WeW
B l readme.txt [c

Figura 16. Sincronizar código fuente

5.5 Visualización del repositorio en Azure DevOps Server

Para ver la trazabilidad del código fuente se puede dirigir desde Azure DevOps Server en la opción "Repos”,
luego en "Files” , encontrando el repositorio TFSVC con su respectivo historial. Ver figura 17.

Q Azure DevOps DNP-Interna / GGSI.WebApp / Repos Files K $/GGSI.WebApp v

Q GGSI WebApp + $/GGSIWebApp /

Overvtew
K $/GGSI.WebApp — Contents History + New f Upload flle(s) ¿ Download a Zlp

S f . Boards la obi Nanw T Latt cfunge Changesets


la Pages
0 Repos k ob| 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
1 Propenies
■ Pages 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
E5 Files 1 wwwroot
M Properties 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
3 Changesets ( ) appsettings.Development.json
wwwroot 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
( ) appsettings.json
A Shelvesets
c» Program.cs 1) appsettings.Oevelopment.ison 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
Pipeiines D readme.txt O appsettings.json 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
c* Startup.cs c» Program.cs 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla
Test Plans
£3 WebApp.csproi Q readme.txt 8 minutes ago 7587 Sincronizar código fuente al repositorio Cesar Augusto Gómez Perilla
Artifacts
c» Startup.cs 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla

E3 WebApp.csproj 8/12/2020 7563 sincronizamos el proyecto 12 de agosto Cesar Augusto Gómez Perilla

Figura 17. Trazabilidad de versión de código en DevOps

5.6 Creación de la rama desarrollo “develop”

Para iniciar la codificación se debe crear la rama con el nombre "develop” , el cual se hará todas las integraciones
de las historias de usuario del proyecto, para los desarrolladores puedan trabajar sin ningún problem a y
desplegar los avances. Ver figura 18.

O ficina de Tecnologías y S istem as de Información


C O D IG O :
GUIA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PAGINA: 14 de 16
VERSIÓN:

|> GGSl.Pruebasf ’* u_ ■■
Abrir en el Explorador de archivos

Obtener la última versión


Explorador de pruebas ^

> ► - <? >o T Desproteger para editar...


Eliminar
Prueba saje de error Resum en de los detalles
A ® UnitTestProyecto ( @ T e s t C a lc u la t o r
^ @ UnitTestProyectc 1H O rig e n : U n itT e
Á @ UnrtTestProyec Revertir... © D u ra c ió n : 4 ms
@ TestCalculatc *9 Deshacer cambios pendientes...

Proteger cambios pendientes


Preparar los cambios pendientes

© Ver historial

a Comparar...

Nueva carpeta
Agregar elementos a carpeta...

Rama y combinación > v Crear una rama...


Bu§car ► t Fusionar mediante combinación...

Avanzadas > ít Convertir en rama...

Figura 18 Crear rama de desarrollo

En la generación de la rama de desarrollo, se selecciona la rama de origen, la última versión de la rama y el


nombre de destino, para este caso será "develop” . Ver figura 19.
C re a r u n a ra m a d e sd e P ru e b a P ilo to N e t ? X

N o m b r e d e ra m a d e o rig e n :

S /G G S I.P ru e b a P ilo to N E T _ T E S T /e sta b le /P ru e b a P ilo to N e t

C re a r u n a ra m a d e sd e la v e rs ió n :

De: Ú ltim a v e rs ió n

N o m b r e d e ra m a d e d e s tin o :

S /G G S I.P ru e b a P ilo to N E T _ T E S T /e s ta b le /P ru e b a P ilo to N e t-d e ve lo p J

D e s c rip c ió n :

C re a d a u n a ra m a d e s d e S /G G S I.P ru e b a P ilo to N E T _ T E S T /e s ta b le /P ru e b a P ilo to N e t

O Se creará la n u e v a ra m a y se c o n firm a rá c o m o u n a sola o p e r a c ió n en el s e rv id o r. N o se cre a rá n c a m b io s p e n d ie n te s . A s im is m o , esta


o p e r a c ió n n o se p u e d e c a n c e la r u n a vez e n v ia d a al s e rv id o r.

C rear u n a ra m a

Figura 19. Indica la rama destino "develop”

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUÍA PARA LA GESTION DE CONTROL
««■
eS d e tO d O S
Departamento
Nacional
Nacional de
de Pls
Planeación DE CÓDIGO FUENTE PÁGINA: 15 de 16
VERSIÓN:

5.7 Creación de ramas puntuales

La generación de las ramas puntuales está orientado a las historias de usuario de DevOps. Una vez este la
rama de "develop” , para el caso del numeral 4.5 se tom ará la historia de usuario #31366 Verificar reportes. Ver
figura 20.

R uta d e a cce so lo ca b E :\L in e a m ie n to \o tro \G G S I.P ru e b a P ilo to N E T TESTxestable

N o m b re -*■ C a m b io p e n d ie ... U su a rio Ú ltim a Ú ltim a in s e rc ió ...

‘n d iP ru e b a P ilo to N e t Sí 1 5 /0 9 /2 0 2 0 09:...
P ru e b a P ilo to N e t-d e v e lo p Sí 1 5 /0 9 /2 0 2 0 09:...
^ P r u e b a P ¡lo to N e t-d e v e lo p -3 1 366 Sí 1 5 /0 9 /2 0 2 0 1 0 :...

Figura 20. Listado de las ramas

5.8 Sincronización rama <puntual> con la rama “develop”

Cuando se finaliza el desarrollo con su respectivo pruebas en la rama <puntual>, se debe sincronizar el
desarrollo con la rama "develop” . Ver figura 21 y 22.

Figura 21. Selección de la rama origen, destino y tipo de versión.

O ficina de Tecnologías y S istem as de Información


C Ó D IG O :
GUIA PARA LA GESTION DE CONTROL
El futuro
r in
e s d e to a o s
Departamento
Nacional de Planeación DE CÓDIGO FUENTE PÁGINA: 16 de 16
VERSIÓN:

Figura 22. Sincronización "Merge” entre las ramas

O ficina de Tecnologías y S istem as de Información

También podría gustarte