Alexander Salas Bastidas
Coder with good taste, workaholic and ubergeek 👨🏻💻
Alexander J. Salas B.
@ajsb85
Preguntas vía twitter @ajsb85
https://slides.com/alexandersalas/awve15/live
GitHub es una forja (plataforma de desarrollo colaborativo) para alojar proyectos utilizando el sistema de control de versiones Git. Utiliza el framework Ruby on Rails por GitHub, Inc. (anteriormente conocida como Logical Awesome). Desde enero de 2010, GitHub opera bajo el nombre de GitHub, Inc. El código se almacena de forma pública, aunque también se puede hacer de forma privada, creando una cuenta de pago.
Git (pronunciado "guit") es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente. Al principio, Git se pensó como un motor de bajo nivel sobre el cual otros pudieran escribir la interfaz de usuario o front end.
La gestión de proyectos es la disciplina del planeamiento, la organización, la motivación, y el control de los recursos con el propósito de alcanzar uno o varios objetivos. Un [proyecto] es un emprendimiento temporario diseñado a producir un único producto, servicio o resultado con un principio y un final definidos (normalmente limitado en tiempo, en costos y/o entregables), que es emprendido para alcanzar objetivos únicos y que dará lugar a un cambio positivo o agregará valor.
Una visión general del proyecto rápidamente.
Información sobre la estructura de directorios.
Cómo empezar el desarrollo.
Flujo de trabajo y difusión de código.
Entornos de desarrollo.
Documentación avanzada
Proporcione una breve descripción de los objetivos del proyecto y un poco de historia. Cualquier enlace que se accede con frecuencia también son buenas para incluir en la parte superior, así, para un fácil acceso. Todo el mundo ama a facilitar el acceso.
Es útil tener una breve descripción de lo que está ahí. Y no está demas que cada directorio tenga su propio README.
Diga a los desarrolladores lo que la mejor manera de saltar en el proyecto podría ser. Cosas como, "clonar este repositorio, crear una rama para la nueva característica, ejecute el instalador, descargar una copia de la base de datos, entre otros. Quien quiera ser el revisor de la solicitud de extracción, también debe hacer cosas como eliminar la rama remota del repositorio una vez que se fusionó".
Es una buena idea para delinear su proceso de desarrollo, ya que puede variar de un proyecto a otro. ¿Quiere la gente que desembolsar su repositorio y enviar solicitudes de extracción; crear ramas de características y enviar solicitudes de extracción; o simplemente seguir adelante y comprometerse a dominar? Deje que los desarrolladores sepan por adelantado, así que no habrá confusión.
Esquemas para su desarrollo, produción y pruebas en caso que los tenga. También esbozar el proceso para hacer las cosas en los diversos lugares. ¿Cómo me aseguro de que mi código está en puesta en escena? ¿Cuál es la mejor manera de desplegar una base de datos para pruebas?
Normalmente nuestra wiki es donde guardamos una documentación más detallada y notas sobre las cosas; Detalles del proyecto como SOW (Statement Of Work / enunciado de trabajo) de la propuesta original, las credenciales a los ambientes, notas Scrum, listas de verificación.
Referenciación y Asociación.
Etiquetando cuestiones.
Adjuntando código.
Tareas hito.
Podemos referenciar una cuestion con simplemente escribir su número #1, #2 ... #n en el mensaje de un cometido, se puede generar dependencias, cerrar cuestiones con solicitudes de extracción de código. Se puede generar enlaces en la descripción de las cuestiones, en la descripción de los lanzamientos, entre otros. Esto a su vez quedará registrado en la linea de tiempo de cada cuestion.
Las etiquetas son una forma sencilla y eficaz de añadir metadatos a sus problemas. Una gran cantidad de sistemas tienden a crear campos y categorías con varios valores en un esfuerzo para permitir el control finito de los metadatos de un problema. GitHub viene con unas cuantas etiquetas por defecto "bugs", "duplicado", "mejoras", "inválida", "pregunta", y "no vamos a resolver". Si bien son útiles para los desarrolladores, también son buenos para el organizador del proyecto ya que sirven también como un gran mecanismo de filtrado.
Cuando generamos una solicitud de extracción estamos creando una cuestion con código adjunto con diferentes cometidos. Cada cometido se puede comentar y discutir, a la vez que se puede hacer en cada línea de código.
Existe una herramienta que facilita la creación de solicitudes de extracción que se llama "hub", se utiliza como herramienta de línea de comandos la cual envuelve a git con el fin de extenderlo con características adicionales y nuevos comandos.
En general, un hito es una tarea que representa una fecha importante en un proyecto, como la finalización de una fase de proyecto, o la fecha de un informe en particular es debido.
Cuando se crea un nuevo hito, simplemente tiene un título, una descripción y un mecanismo fecha de elección.
Hay quienes tienen único plan de sprint por delante, pero hay un hito creado para cada iteración hasta el final del proyecto.
By Alexander Salas Bastidas
Presentación para el Agile Weekend Venezuela - Junio, 13-14, 2015 : Caracas