⛺️ WordFest Live - El festival de WordPress Ponte al día ahora
El festival de WordPress
4 de marzo de 2022
Presentado por

Git into the Groove - Pasar del trabajo autónomo al colaborativo

Resumen de la sesión

Orador:
Qué esperar:

Pasar de ser autónomo a trabajar en una agencia puede ser abrumador, pero no dejes que el miedo a un flujo de trabajo colaborativo te asuste.

¿Qué es Git? Mejor pregunta, ¿qué es el control de versiones? ¿Y qué diablos es un entorno local?

Cubriremos los aspectos básicos de
- Entornos locales, multidev y ramas
- Control de versiones
- Visión general de un cliente git

Editar Transcripción

AmyJune Hineline - Git into the Groove - Pasar del trabajo autónomo al colaborativo

Yoast: [00:00:00] Sabes, el Yoast SEO, plugin, [00:01:00] son viñetas de retroalimentación rojas, naranjas y verdes que te ayudan a optimizar tus posts para la web. Funciona en millones de sitios web. Intentamos que el SEO sea comprensible y accesible para todos.

Nexcess: Oh, genial. Mi sitio web se estrelló. Me rindo. No renuncies a tus sueños. Jordan, ¿quién eres? Soy yo. Tú del futuro. Tu sitio web profesional no está fuera de tu alcance. Sólo necesitas a Nexcess. Con el alojamiento gestionado de Nexcess, obtendrá tiempos de carga rapidísimos, monitorización de rendimiento y actualizaciones integradas, y un soporte siempre increíble. 24 7 365 para todos tus proyectos. Vaya. Sí.

Weglot: Descubra Weglot, la sencilla solución de traducción para su sitio web. Todo lo que tiene que hacer es añadir Weglot a su sitio web, seleccionar los idiomas que necesita, y eso es todo. Su sitio web ya está disponible en varios idiomas.

Bluehost: ¿Quién dice que construir una tienda en línea [00:02:00] tiene que ser difícil con el sitio web de Bluehost. Es más que fácil. Es decirnos su cosa y la IA inteligente. Nosotros nos encargamos a partir de ahí. Fácil es WooCommerce amigable. Así que puedes añadir uno de estos, o cambiar esto por aquello fácil. Se puede crear una tienda en minutos con un número ilimitado de productos. Fácil. Si usted vende botas, libros o tazones, es crear una tienda en línea con Bluehost, fácil construir más allá de los límites con Bluehost.

Matt Graham: Bienvenidos [00:03:00] todos y cada uno a WordFest Live. Acabamos de empezar con 24 horas de celebración de la gente, la tecnología y el Gran Corazón Naranja de WordPress.

Rachel Winchester: WordFest Live no sólo ofrece un festival de contenido educativo, sesiones de bienestar y oportunidades de networking, sino que también es una recaudación de fondos para Big Orange Heart. Por favor, visite ese enlace de donación en cualquier momento para apoyar la misión de nuestro organismo.

Matt Graham: WordFest Live es una oportunidad de 24 horas para que la comunidad de WordPress se reúna, se sienta menos aislada, aprenda de los demás y esté presente entre ellos.

Rachel Winchester: Nuestra primera ponente de hoy es AmyJune Hineline con Git Into The Groove, pasando de ser freelance a un flujo de trabajo colaborativo. AmyJune es una colaboradora activa en el código abierto. Como embajadora de la comunidad de código abierto, está en una posición única para ayudar a las personas a sentirse más cómodas y seguras mientras contribuyen a sus comunidades. Además de su trabajo, la construcción de conexiones de la comunidad, [00:04:00] AmyJune es un ávido geocasher observó entusiastas de Volkswagen y ochos con los codos en la mesa.

AmyJune Hineline: Hola, gracias por esa agradable presentación. Um, me encanta ir primero. Es agradable Git tipo de cosas fuera del camino. Hay un poco de un hipo, pero eso está bien. Eso es lo que pasa cuando nosotros, um, trabajamos en tecnología, cierto. Lo sabemos. Um, así que voy a estar hablando de, um, flujo de trabajo colaborativo y git hoy, um, todo al, tipo de tema a los años ochenta, lo que hace que sea un poco más divertido.

AmyJune Hineline: Uh, antes de empezar, me gusta hacer algo de limpieza. Hay imágenes en el paquete de diapositivas y yo soy un defensor de la accesibilidad. Así que entiendo que algunas personas que están viendo o participando hoy pueden no ser capaces de ver los activos visuales, si hay alguna imagen que añade contexto o es, eh, necesita ser explicado, voy a, eh, voy a [00:05:00] explicar los que a medida que avanza, pero algunos de ellos son decorativos y no voy a describirlos.

AmyJune Hineline: Um, en aras de la brevedad, por lo general incluyen un enlace a la cubierta de diapositivas, pero accidentalmente lo puso en un sombrero rojo, uh, unidad. Así que voy a rehacer que después de la presentación y hacer que los, eh, diapositivas disponibles. Y las publicaré en línea. I. Y la presentación de hoy, um, en las tierras Aloni en el norte de California.

AmyJune Hineline: Y me gustaría reconocer, um, que yo vivo en un territorio tradicional ancestral sin concesiones. Uh, es importante entender la larga historia que todos tenemos. que nos ha llevado a vivir. Um, y los reconocimientos de tierras no existen en tiempo pasado. Uh, son actuales, uh, el colonialismo es un proceso continuo y necesitamos construir nuestra conciencia, um, de nuestros participantes actuales.

AmyJune Hineline: Uh, mi nombre es AmyJune. Todo el título de una sola palabra, camel case. Uh, mis pronombres son ella y [00:06:00] ella. Soy la gerente senior de la comunidad en https://opensource.com y opensource.com está bajo el paraguas de Red Hat. opensource.com es un sitio web dedicado a compartir información sobre el código abierto junto con la cultura abierta. Si alguna vez quieres escribir para opensource.com, ya sabes, ponte en contacto conmigo, um, puedes ver mis enlaces aquí.

AmyJune Hineline: Es VolkswagenChick a través de, ya sabes, LinkedIn y Facebook y Instagram y Twitter. Um, I. Quiero reconocer eso. Realmente creo en la reducción de las barreras de entrada para la tecnología, no sólo con las contribuciones, pero la tecnología en general, dirijo días de contribución, um, a nivel regional y nacional local. Um, porque todo el mundo, uh, puede contribuir a nuestros proyectos, no sólo con el código.

AmyJune Hineline: Aquí está mi amigo Spotty. Vive conmigo. Um, puede que lo veas. Así que quiero presentarlo antes de tiempo. Su nombre largo es Spotty MacSpotsALot, pero podemos llamarlo spot para abreviar. Se llama así por el gato de Star Trek. ¿Y de qué vamos a hablar hoy? Hablaremos de cómo es el mundo de los autónomos frente a la vida de las agencias.

AmyJune Hineline: Um, y una de las cosas que realmente quiero concentrarse en son las herramientas que hace que sea más fácil para nosotros para colaborar con otras personas. Eso es el control de versiones, pero también voy a hablar de, uh, clientes de Git, um, uh, entornos locales. Y tengo aquí arriba que voy a hacer una demostración si slack, si el tiempo lo permite, pero yo hablo mucho, así que eso no suele suceder.

AmyJune Hineline: Pasar de ser freelance a agencia tiene definitivamente su ventaja. ¿Cuáles son algunas de las cosas que nos gustan de los autónomos? Nos encanta la libertad que nos da trabajar solos, ya sabes, trabajamos a nuestra hora. En cualquier momento. No tenemos que preocuparnos por molestar a un equipo y hacerles un ping o enviarles un correo electrónico en medio de la noche cuando nos levantamos, porque tenemos una revelación sobre nuestro código.

AmyJune Hineline: Pero junto con esa libertad, [00:08:00] vienen algunas dificultades también, ya sabes, eh, no hay nadie alrededor para rebotar las ideas. No hay nadie que te ayude con la revisión del código. No hay nadie que te ayude con cualquier tipo de conflicto. Um, a veces usted acaba de hacer lo que tiene que hacer para Git el trabajo hecho, y puede ser perjudicial para no tener esa responsabilidad.

AmyJune Hineline: A veces me gusta compararlo con el salvaje, salvaje oeste. Porque hacemos malabarismos con todos los papeles, ya sabes, eres la persona encargada de absolutamente todo. Usted es el director del proyecto, que está haciendo la garantía de calidad y, ya sabes, una experiencia de usuario, QA y UX. Uh usted es usted es el diseñador, usted es el propietario del producto.

AmyJune Hineline: Son todas esas cosas. Pero muchas de las ventajas que históricamente tenía el trabajo freelance han empezado a englobarse en la vida de las agencias con el inicio de la pandemia. Ya sabes, um, vemos que las empresas y las agencias se mueven a más, uh, condiciones amigables a distancia. No vamos tanto a la oficina [00:09:00].

AmyJune Hineline: Y también estamos siendo más inclusivo sobre las zonas de tiempo en estos días, y el trabajo en equipo ofrece la diversidad de pensamiento y la diversidad de. La creatividad, tener un equipo alrededor de tener ese ambiente de equipo, todo el mundo lluvia de ideas juntos, que a su vez realmente aumenta la resolución de problemas y somos más eficientes y eficaces en llegar a soluciones.

AmyJune Hineline: Los equipos eficaces también permiten más espacio para la innovación, uh, a su vez crea, ya sabes, una ventaja competitiva, ya sabes, uh, hay uh, Cumplimiento de metas y objetivos, uh, uh, objetivos, ya sabes, compartir opiniones y experiencias diferentes realmente fortalece y nos hace responsables. Ya sabes, podemos tomar decisiones más rápido y el esfuerzo del equipo aumenta, ya sabes, um, puedes hacer las, puedes hacer las etapas de diseño, planificación, implementación [00:10:00] implementación, y mucho más efectivamente cuando un equipo está ahí para ayudar.

AmyJune Hineline: Y también trabajar en un papel tradicional de desarrollo web a tiempo completo en una empresa o agencia establecida puede darnos la oportunidad de un aprendizaje más estructurado, ya sabes, y el aprendizaje libre. Ya sabes, tenemos el desarrollo profesional budGit que podemos confiar. Um, además tenemos la exposición diaria a los expertos y mentores y las mejores prácticas que no siempre Git como un profesional independiente o tal vez.

AmyJune Hineline: Hay una barrera debido al coste. Cuando estás solo, asumes todos los papeles, como he dicho, en un equipo, hay un lugar para que todos contribuyan en función de las funciones y sus conjuntos de habilidades específicas. Y esto realmente añade responsabilidad en las formas de controles y equilibrios en un equipo. Ya sabes, tenemos los gestores de proyectos, que ayudan a asignar tareas y actúan como intermediarios para los desarrolladores y las partes interesadas, que ayudan a traducir la jerga y [00:11:00] averiguar lo que necesita específicamente entradas se presentan y se asignan.

AmyJune Hineline: Um, los desarrolladores y diseñadores trabajan en las tareas. Y luego, ya sabes, colaboran, lo que lleva a mejorar y a tener más ideas. Hay líderes técnicos que nos ayudan a fusionar el código y resolver los conflictos en nuestro código. Y luego, después de los cambios en los conflictos se resuelven. Tenemos gente que realiza las pruebas de usuario para nosotros y la garantía de calidad y las pruebas de regresión.

AmyJune Hineline: Ya sabes, cuando escribimos el código, realmente no deberíamos Um, estar revisando nuestro propio código. Um, y luego después de la pro, después de eso, el director del proyecto se hace cargo de nuevo y decide si los cambios están listos para las partes interesadas y es un enjuague y la repetición, y es mucho más fácil dentro de un código de equipo, la gestión del flujo de trabajo se hace mucho más fácil cuando tenemos herramientas en el lugar como el control de versiones.

AmyJune Hineline: El control de versiones es un sistema que registra los cambios en un [00:12:00] conjunto de archivos o en un conjunto de archivos a lo largo del tiempo para que podamos volver atrás y podamos recordar esas versiones específicas más tarde. Así que esto es más acerca de la gestión del flujo de trabajo de código controles de versión son una categoría de herramientas de software que ayudan a un equipo de software. Gestionar los cambios en el código fuente a través del tiempo, eh, el control de versiones, las pistas de software, cada modificación del código y un tipo especial de base de datos.

AmyJune Hineline: Si se cometen errores, los desarrolladores y los directores de proyecto pueden retroceder en el tiempo y hacer comparaciones con versiones anteriores del código para ayudar a remediar realmente cualquier error o equivocación sin que todo el equipo pierda tiempo. ¿Cuáles son algunos de los requisitos para implementar el control de versiones? Porque hay algunos requisitos previos, primero se necesita un ordenador equipado para la tarea.

AmyJune Hineline: Quieres asegurarte de que instalamos Git localmente. O globalmente, ya sabes, [00:13:00] incluso si ya está instalado, que puede ser, podría, podría ser instalado porque tal vez usted tiene herramientas dev ya instalado, pero siempre es una buena idea para actualizar a la última versión. Y esto puede hacerse, ya sabes, a través de un paquete u otro instalador, o puedes descargar el código fuente y compilarlo tú mismo.

AmyJune Hineline: Si tienes la suficiente confianza para hacerlo. Y también conocimientos básicos de la línea de comandos. Si eres un principiante, se puede utilizar un cliente Git, pero realmente debes estar familiarizado con algunos de esos conocimientos básicos de la línea de comandos, no mucho, pero realmente ayuda a saber lo que está pasando detrás de las escenas del cliente.

AmyJune Hineline: Cuando usas una. Y hay interfaces gráficas de usuario para la línea de comandos. A veces las oímos llamar gooeys, ya sabes, interfaces gráficas de usuario GUI. Y quiero introducir este concepto porque en las próximas diapositivas, tengo algunas imágenes de referencia. Um, y después de haber introducido los comandos, um, lo que parecen en el cliente Git y el cliente [00:14:00] simplifica los comandos en los botones y desplegables y la ventana, um, las interfaces para los trabajadores.

AmyJune Hineline: Esta es una imagen de un cliente. Ya sabes, estamos viendo el árbol de origen y un registro en la parte superior. Puedes ver que hay algunos botones a los lados. Hay más botones. Uh, algunos de ellos no están disponibles. Si no hay nada que hacer, por ejemplo, um, el botón de fusión a través de la parte superior en el centro, um, es de color gris porque no hay nada actualmente para fusionar, pero la salida, la rama de anuncios, la selección de la cereza, las funciones de revertir están disponibles.

AmyJune Hineline: Y a lo largo del lado izquierdo, hay casillas de verificación para agregar ramas, um, uh, etiquetas, usted sabe, usted puede ver los del árbol de origen, um, y luego a través de la, usted sabe, el muy, el muy, uh, lado izquierdo, hay, usted puede elegir qué archivos están abiertos en el registro cuando. Y hay un montón de clientesgit disponibles. Algunos son gratuitos, otros no, algunos tienen versiones gratuitas con acceso limitado [00:15:00].

AmyJune Hineline: Otras son gratuitas con acceso total. Algunas versiones gratuitas sólo nos permiten trabajar en repositorios que son públicos. Así que eso puede ser limitante a veces si las bases de código de nuestros clientes son privadas o tienen acceso limitado. Así que asegúrate de hacer tus deberes, ya sabes, prueba algunos, asegúrate de que tienen las características que necesitas.

AmyJune Hineline: Y también hay que tener en cuenta que a veces las agencias tienen licencias compartidas y les gustaría que todo el mundo usara el mismo cliente, porque eso facilita un poco la resolución de problemas cuando todos usan lo mismo. Muchos desarrolladores recurren a entornos de desarrollo integrados. Esos son IDEs para abreviar, um, entornos de desarrollo integrados.

AmyJune Hineline: Y la mayoría de estos, um, clientes IDE, uh, tienen una curva de aprendizaje. Um, por lo que a veces el IDE podría no ser accesible para usted, pero mucho como los clientes deegit. Algunos son gratuitos, algunos tienen pruebas y otros. Y algunas agencias de nuevo, como tener todo el mundo utiliza la misma herramienta, así que asegúrese de que su máquina puede manejar la carga de ejecutar un [00:16:00] IDE.

AmyJune Hineline: Uh, a veces la combinación de tener algunas aplicaciones abiertas puede afectar el tiempo de ejecución y realmente ralentizar la máquina. Sé que hasta que empecé a trabajar con una máquina más fuerte, si tenía Docker abierto con una hoja de cálculo complicada con como un montón de cosas pasando en eso. Y luego, si enciendo mi slack y luego, oh mi Dios, si tenía zoom en mi máquina realmente empezaría a quejarse y el ventilador giraría.

AmyJune Hineline: Um, así que ten en cuenta, ya sabes, cómo, cómo, la cantidad de carga de trabajo que se necesita para ejecutar algunas de estas cosas en conjunto. Entonces, ¿por qué Git y no subversión u otra herramienta? Muchos de nosotros usamos Git, porque Git, se ha convertido en el estándar de la industria para el desarrollo web. Tiene un conjunto muy rico de comandos para el seguimiento de la clonación y los flujos de trabajo.

AmyJune Hineline: Y muchos de estos fundamentos pueden ser llevados a través de otros flujos de trabajo de versiones. Así que aquí es donde mis referencias ochenteras comienzan a entrar en juego. Um, perdóname por adelantado. [00:17:00] Nunca vamos a Git para arriba. Nunca voy a Git usted hacia abajo. Así que vamos a empezar a hablar de algunos fundamentos de Git, um, tengo algunos enumerados aquí, pero vamos a entrar en la mayoría de ellos en un poco, pero, um, tenemos Git en él.

AmyJune Hineline: Uh, inicia un nuevo repositorio. Git status es mi comando favorito. Enumera todos los archivos que han sido cambiados y están esperando ser confirmados. Es un buen comando para ejecutar antes de ejecutar cualquier otro comando. Y tal vez por eso mi fe que es mi favorito. Porque es el que más hago. Um, funciona es.

AmyJune Hineline: Te recuerda en qué has estado trabajando. Hay ramas que enumeran todas las ramas locales en tu repositorio actual. También puedes indicar visualmente en qué rama o qué rama estás actualmente. Y dependiendo de cómo tengas tu terminal, ya sabes, puede estar resaltada en verde o tener un asterisco.

AmyJune Hineline: Git diff muestra las diferencias de los archivos, que aún no se han puesto en escena. Git registrado. Este comando se utiliza para listar, eh, [00:18:00] el historial de versiones de la rama actual. Está en Git push desde las ramas comprometidas de nuestra rama principal a nuestros repositorios remotos. Una vez más, voy a estar hablando de estos en profundidad en un poco.

AmyJune Hineline: Um, así que no te sientas sobre. Git pull recupera y fusiona, ya sabes, los cambios en tu servidor remoto en tu directorio de trabajo. Git add. Ahí es donde añadimos nuestros archivos en los que hemos estado trabajando. Um, los ponemos en un área de preparación, Git commit, realmente confirma esos cambios, um, Git merged. Esto es cuando estamos trabajando con otros y fusionamos nuestros flujos de trabajo juntos.

AmyJune Hineline: Así que vamos a Git en la ranura y hablar un poco acerca de trabajar localmente. Esto significa en su máquina y no en el navegador o en una nube. Así que los fundamentos de trabajar localmente, uno de esos comandos principales de los que queremos hablar es Git clone. Crea una copia de trabajo. De un, de un repositorio localmente en su máquina.

AmyJune Hineline: Y a partir de ahí empiezas a hacer tus cambios, um, Git remoto. [00:19:00] Si usted no se ha conectado todavía a su repositorio local, a un servidor remoto, um, se agrega el servidor, por lo que es capaz de empujar, sus cambios hacia arriba. Y esto se utiliza cuando usted ha creado inicializado una base de código localmente primero, cuando hablamos de eso, Git en él a mí.

AmyJune Hineline: Git pull. Y voy a hablar de esto casi a través de cada flujo de trabajo. Es cuando tu código está en otro lugar y podría ser diferente de tu trabajo actual, ya sabes, obtener y fusionar los cambios en el servidor remoto a tu directorio de trabajo. De nuevo, voy a hablar mucho de este comando. Realmente ayuda a mantenerte al día con lo que otras personas están trabajando mucho, como el estado de Git.

AmyJune Hineline: Casi hago una encuesta Git con todo. Y aquí está una foto de eso. El cliente Git, ya sabes, mientras estamos clonando, es una interfaz muy intuitiva. No voy a decir fácil porque fácil es un término relativo, pero es bastante sencillo. Um, se introduce la URL donde vive la base de código y se pulsa un botón. Y la mayoría de nuestros repositorios en línea que compartimos con los demás, tienen esta [00:20:00] información fácilmente disponible en su tablero de instrumentos o en sus archivos read me de cómo configurarlo localmente.

AmyJune Hineline: Así que vamos a hablar de la ramificación. Um, no queremos hacer cambios en la base de código compartido. Así que queremos crear ramas que reflejan el código y, y queremos trabajar en esas otras ramas. Así que no corrompemos el trabajo de los demás.

AmyJune Hineline: Así que aquí hay algunos comandos en torno a la ramificación. Tenemos Git branch cuando introducimos eso en nuestra terminal o en su cliente Git de nuevo, esto enumera todas las ramas en su repositorio, y también le dice qué rama está actualmente en Git checkout. Y usted puede modificar que con Git checkout en su nombre de la rama.

AmyJune Hineline: Este comando se utiliza para cambiar de una rama a otra. Git checkout dash B. En realidad crea una nueva rama en ese mismo momento para ti y te cambias a ella. Así que dirías Git checkout dash B y luego el nombre de tu nueva rama. Y entonces se [00:21:00] depositará justo en esa nueva rama Git branch dash D borra tu rama actual de características.

AmyJune Hineline: Y volviendo a ese cliente, ya sabes, pulsa un botón y puedes nombrar y crear una sucursal en cuestión de segundos, nombras la marca. El nombre que le pongas a la sucursal depende de ti. Pero cuando trabajamos juntos, queremos asegurarnos de que somos coherentes con lo que hacen los demás. A veces, las agencias y organizaciones pueden tener parámetros sobre las convenciones de nomenclatura, como la tarea o el número de billete y el nombre.

AmyJune Hineline: Um, a veces cuando usted está trabajando en, uh, ya sabes, contribuyendo de nuevo a WordPress, se pone el billete, um, como su nombre de la rama, ya sabes, lo que, lo que el billete que está trabajando en el, en la cola de la pista. Ok. Así que vamos a empujarlo ahora, empujarlo muy bien. Bien. Um, empujar se refiere a trabajar con otros de forma remota, ya sabes, en algún momento quieres compartir tus modificaciones o tus adiciones que hiciste.

AmyJune Hineline: Con el equipo y para hacer esto, usted tiene que empujar hacia arriba. Uh, usted quiere asegurarse de que [00:22:00] sus ramas listo. Así que primero se hace Git añadir que es donde se agrega uno o más a la puesta en escena uno o más archivos para quedarse. Um, si quieres añadir todos ellos, haces Git, add con una estrella o Git I'm sorry, Git ad con un punto. Y eso agrega todos tus, todos los archivos, pero también puedes agregar archivos uno por uno diciendo, Git, add, y luego el nombre del archivo.

AmyJune Hineline: Digamos que estás trabajando en cuatro o cinco archivos, pero no estás preparado para añadirlos todos. Puedes añadirlos uno por uno. Uh, Git commit, uh, confirmar los cambios a su rama local. Um, tenemos Git comat, uh, Git commit dash M y luego pones un mensaje allí, ya sabes, que tu mensaje de commit. Um, de nuevo, ya sabes, um, Utiliza tus mensajes sabiamente.

AmyJune Hineline: A veces las agencias querrán que tal vez comenzar con su número de billete o el, o el nombre de la rama característica, ya sabes, así que, así que realmente trabajar con su equipo en los mensajes de confirmación, así, y luego Git [00:23:00] tirar, ya sabes, fetch y Birch cambios en ese servidor remoto a su directorio de trabajo. Una vez más, como he dicho, me referí a esto mucho porque eso es realmente importante para asegurarse de que su.

AmyJune Hineline: Actual con los demás. A veces la comunicación no es perfecta. Y algunas personas están trabajando en las mismas líneas de código al mismo tiempo. Ya sabes, tal vez alguien ha empujado la suya desde la última vez que se comprobó, esto realmente ayuda con los conflictos. Um, y hablo de los conflictos en el próximo par de diapositivas y luego Git empujado.

AmyJune Hineline: Usted sabe, usted envía sus cambios de nuevo a esa rama principal de la, del repositorio remoto. Aquí hay otra captura de pantalla, ya sabes, y este está destacando, uh, el botón en la interfaz de usuario para empujar y tirar. Uh, los desplegables junto a ellos permiten más opciones y da información útil. Realmente recomiendo familiarizarse con los consejos de la herramienta y las ventanas de información cuando usted está aprendiendo el proceso y familiarizarse con el flujo de trabajo.

AmyJune Hineline: A menudo, estos consejos de herramientas muestran la pertinente, Git comandos de terminal para. Así que recuerda que dije que el conocimiento básico [00:24:00] se puede obtener algo de eso. Un conocimiento más avanzado por, ya sabes, pasando por encima y bajando y encontrando esos, eh, relevantes, Git, eh, comandos de terminal.

AmyJune Hineline: Así que vamos a hablar de la fusión. Antes de aplicar los cambios externos, usted debe Git su propio trabajo en buena forma y comprometido localmente. Así que usted no es, por lo que no será clobbered si hay algún conflicto. Así que vamos a traer todo nuestro flujo de trabajo juntos. Ya sabes, es algo más que empujar tu código a una rama limpia.

AmyJune Hineline: Um, tal vez su equipo está trabajando en el mismo código a la vez. Usted sabe, todo tiene que venir juntos y se fusionó. Um, por lo que este comando remoto Git, ya sabes, el comando se utiliza para conectar su repositorio local. Git pull. Recuerda que hablo mucho de eso. Obtenemos y fusionamos los cambios al servidor remoto [00:25:00], ya sabes, a nuestro directorio de trabajo y luego Git merge.

AmyJune Hineline: Este comando fusiona, el historial de la rama especificada en la rama actual y un cliente. Usted puede mirar los registros y comparar las dos instancias en el tiempo del mismo archivo. Usted sabe, es de color verde codificado es para las adiciones. El rojo es para las eliminaciones. Usted puede comparar diferentes ramas en diferentes instancias en el tiempo con su cliente.

AmyJune Hineline: Um, aquí es la fusión, ya sabes, hay un botón para la fusión. Hace magia detrás de las escenas y tira del código juntos. Um, mientras que puede hacer algo de magia, no quiere hacer suposiciones si hay un montón de conflictos. Así que tienes que trabajar a través de esos conflictos por ti mismo. Entonces, ¿qué hacemos con los conflictos y la conmoción?

AmyJune Hineline: Me encanta este espacio de Twitter. Soy [00:26:00] desarrolladora, y esto es tan cierto. Hemos estado allí. Sólo pensamos que va a tomar un minuto para limpiar. Ya sabes, todos hemos dicho esto antes. Son famosos. Las últimas palabras. Será una solución rápida. Pero los conflictos ocurren, ya sabes, incluso con los desarrolladores más veteranos, la forma más directa de resolver un conflicto de fusión es editar el archivo en conflicto.

AmyJune Hineline: Um, el estado de Git. Recuerde que es mi favorito. Usted sabe, que la lista de los archivos y que ha cambiado, y los que todavía tienen que ser añadido o comprometido. Um, usamos el comando Git diff. Dif nos ayuda a encontrar las diferencias entre los estados del repositorio o los archivos. Y esto es útil para predecir y prevenir conflictos de fusión.

AmyJune Hineline: Tenemos Git registrado dash dash merge donde podemos ver todos los conflictos de fusión y luego Git push que es donde enviamos nuestros cambios de nuevo a la rama principal de nuestro lo de nuestro repositorio remoto. Así que. Aquí hay una [00:27:00] captura de pantalla del cliente Git. Una vez más, se puede ver que hay tres versiones del mismo código en comparación con los demás.

AmyJune Hineline: Y este es el momento de revisar y comprobar. Hay realmente dos cosas que puedes hacer con esta información. Usted puede decidir no fusionar, o puede arreglar los conflictos. Así que cuando se toma la decisión de no fusionar en el código, um, decir que su código simplemente no está jugando bien juntos. Demasiada gente ha hecho demasiados cambios a la vez.

AmyJune Hineline: Así que. Utilizaremos un comando, Git fetch origin, esto obtiene el último historial del servidor y apunta a tu rama principal local. Git reset. Y entonces, um, el commit, este comando deshace todos los commits después del commit especificado y preserva los cambios localmente, Git reset dash hard con, um, el número de commit, este comando descarta todo el historial y vuelve al especificado.[00:28:00]

AmyJune Hineline: Entonces hay botones para ayudarle con la opción nuclear para, ya sabes, pulse un botón, pero lo que es agradable es Git, los clientes son realmente educados. Um, se aseguran de que realmente queremos volar o disolver nuestro trabajo. Así que usted puede ver en esta captura de pantalla, ya sabes, ¿estás seguro de que quieres hacer. Um, y te da esa advertencia.

AmyJune Hineline: Así que es muy fácil de ver. Así que, um, incluso si usted es como muy cómodo en la línea de comandos, a veces es agradable a Git de nuevo en eso, Git cliente en algunos de estos más, uh, uh, con los conflictos de fusión y esas cosas, plataformas de control de versiones basadas en la web. Estas son cosas como. Uh, GitHub bit bucket, Git lab.

AmyJune Hineline: Estas son las plataformas que nos proporcionan una interfaz visual rad, que también puede realmente ayudarnos a seguir y gestionar nuestros proyectos de control de versiones a nivel local. Um, ya sabes, el flujo de trabajo es el mismo, ya sabes, se crea una rama, se trabaja en un espacio fuera de ese sitio de producción. Usted agrega confirmaciones, revisar el código y añadirlos a [00:29:00] rama.

AmyJune Hineline: Usted crea pull requests. Esto inicia el proceso de revisión de código y una interfaz para que todos puedan ver, um, y luego revisiones de código donde discutimos y colaboramos todo, ya sabes, porque tal vez hice un cambio. Um, pero cuando hizo un cambio diferente y tenemos que hablar de esas cosas. Y luego la fusión es donde movemos nuestro código en la rama principal.

AmyJune Hineline: Uh, aquí hay una captura de pantalla de un repositorio de GitHub, ya sabes, um, esto es mío porque me gusta ser educado. Uh, usted puede ver que los archivos se enumeran. Puedes ver, um, algunas de las cosas que he cambiado con el tiempo, ya sabes, hay botones en la parte superior. Es esa interfaz para mi repositorio de código en línea. Y esto es un pull request.

AmyJune Hineline: Alguien miró mi informe y dijo, oh, algo no está bien. Así que pusieron en una solicitud de extracción, que es como, una especie de solicitud de fusión. Um, y con el clic de un botón, soy capaz de hacer que, uh, en línea. Un servidor local juega un [00:30:00] papel vital para los desarrolladores. El propósito de un entorno de desarrollo es tener un lugar que permite el desarrollo y las pruebas en una máquina local sin las preocupaciones de perder la conexión a Internet o accidentalmente la creación de agujeros de seguridad temporal o constantemente subir archivos, un entorno local es realmente un lugar para los desarrolladores o diseñadores para probar todo lo que quieren.

AmyJune Hineline: Sin preocuparse por lo que afecta a los usuarios finales o editores de contenido que trabajan en el sitio web en vivo y al igual que Git hay algunos requisitos previos que van involucrados con, ya sabes, uh, la creación de su entorno de host local como mínimo. Uh, usted necesita un servidor PHP. Esto es para WordPress servidor PHP, un servidor de base de datos, um, y PHP para WordPress.

AmyJune Hineline: También necesitas un ordenador equipado para la tarea, ¿sabes? Algunos de nosotros todavía están en máquinas más antiguas, no en nuestras M. Ya sabes, si estás usando un Mac, [00:31:00] quieres asegurarte, ya sabes, algunos de los requisitos mínimos podrían ser algo así como, ya sabes, un procesador de dos núcleos 86 compact press con tal vez cuatro gigabytes de memoria o gigabytes de Ram, y luego, ya sabes, 25 gigabytes de espacio disponible en el disco.

AmyJune Hineline: Pero todos estos anfitriones locales, cuando los configuras te dirán lo que prefieren. Um, algunos de los agentes más complejos podría ser. Para trabajar de forma óptima. Um, usted podría necesitar un procesador de ocho núcleos. Así que haz tu investigación cuando selecciones qué servicio quieres usar, y luego un servidor local juega un papel fundamental para la mayoría de todas las ofertas.

AmyJune Hineline: Realmente permite. Y me gusta repetir esto, reiterarlo, permite el desarrollo y las pruebas en una máquina local sin las preocupaciones de una conexión a Internet. He enumerado algunas opciones para la creación de servidores locales. Uh, usted puede tener, ya sabes, Linux, puede utilizar Mac iOS, el desarrollo de las ventanas. Usted puede utilizar un desarrollo de la máquina virtual de [00:32:00] máquinas virtuales.

AmyJune Hineline: A veces oirás que los llaman VMs. Es un servidor autónomo completo que se ejecuta en su propio entorno y sistema operativo. En su máquina de tipo de separada de su máquina y luego Docker entornos de desarrollo. Docker es una gran herramienta, um, para los entornos de desarrollo local, así debido a la letra pequeña, una pequeña huella que tiene, y los tiempos de inicio rápido.

AmyJune Hineline: Así que esto es como, usted puede oír que se llama desarrollo en contenedores. ¿Por qué tener un servidor local? Ya sabes, hay algunas razones que más o menos requieren que construyas tus cosas web localmente. Um, puede que tengas acceso limitado al servidor del cliente. Ya sabes, estás construyendo un sitio web o una aplicación para otra persona, y no tienes acceso a su servidor web.

AmyJune Hineline: Usted no tiene acceso a su repositorio privado. Uh, si usted está construyendo una nueva versión de un sitio web o aplicación existente, ya sabes, lo que significa que usted no quiere ensuciar [00:33:00] alrededor de la producción, um, mientras que usted está jugando y experimentando y, posiblemente, cometer errores con el nuevo código. Así que realmente permite más experimentación sin el riesgo de volar la biblioteca.

AmyJune Hineline: Y entonces no se necesita una conexión local a Internet. No necesitas un servicio de alojamiento web, ni siquiera una conexión a Internet. Todo se ejecuta cómodamente en tu ordenador. Puedes concentrarte en la codificación y dejar el despliegue del sitio hasta que esté listo. Puedes trabajar mientras esperas a tus hijos en la gimnasia.

AmyJune Hineline: Mientras que usted está esperando en la cola para la membresía del gimnasio, ya sabes, cosas por el estilo. Y realmente puedes personalizar tu configuración, ya sabes, probar tu desarrollo antes de salir a la luz. Realmente elimina el riesgo de construir nuevas características y hace que el desarrollo sea menos estresante. Y luego está la idea de tener más control.

AmyJune Hineline: Y usted puede decir que estoy emocionado por esto. Um, particularmente cuando estás depurando, ya sabes, digamos que eres nuevo y no sabes lo que estás [00:34:00] haciendo, ya sabes, A veces es útil tener más control sobre tu entorno, ya sabes, um, y tener herramientas especiales en el lugar que no quieres en tu sitio de producción.

AmyJune Hineline: Porque podría empantanar, pero la buena noticia es que, ya sabes, esos requisitos. Hemos mencionado un par de diapositivas atrás, ya sabes, el servidor web, un servidor de base de datos y la parte de PHP. Hay muchos hosts locales que pueden hacer todo ese trabajo por nosotros. Y no tenemos que configurarlo nosotros mismos. Por lo general, algunos de estos hosts vienen con un servidor web, un sistema de gestión de datos para ejecutar en el servidor web.

AmyJune Hineline: Tienen lenguajes de programación del lado del servidor. Um, a menudo tienen interfaces para controlar el servidor web, ya sabes, iniciar la parada. Pausa, y luego una interfaz para acceder y manipular la base de datos, que no siempre tenemos un más trabajo en línea. Y esto es nuevo. Uh, yo trabajo en el espacio de Drupal mucho y nosotros [00:35:00] trabajar con, uh, Git pod y me hizo girar un sitio de WordPress, uh, ayer usando Git pod.

AmyJune Hineline: Es un nuevo entorno basado en el navegador que permite la colaboración. Es Git pod. Es realmente sencillo crear un entorno de desarrollo automatizado en la nube. Y no toma mucho tiempo. Está integrado con vs code, o puedes usar un IDE de JetBrains dentro de su entorno, y es muy personalizable.

AmyJune Hineline: Y lo que es súper bueno de este Git pod es que puedes compartir la URL con alguien y puedes verlos trabajar en el código en línea al mismo tiempo. Y ese es el final de la presentación. Así que quiero dar las gracias a todos de nuevo. Um, y Volkswagen Chick en todos los medios de comunicación y que se escribe V O L K S W A G E N C H I C K.

AmyJune Hineline: Es realmente largo, pero se puede hacer. Y luego, um, cuando comparto esa cubierta de diapositivas [00:36:00], tengo algo de información realmente buena sobre, uh, recursos sobre Git, y en realidad voy a poner más recursos allí porque quiero poner eso, Git pata enlace de allí. Porque es muy emocionante entorno local.

AmyJune Hineline: Y con eso, voy a dejar de compartir. Y no estoy seguro de si vamos a hacer preguntas.

Matt Graham: Um, bueno, quiero decir, tengo algunas preguntas para ti. Um, así que en primer lugar, creo que tienes que estar a cargo del karaoke si eso es alguna vez una cosa para, para WordFest, porque entonces podrías ser como una combinación de como una versión tecnológica de Weird Al con tu, tu, con tus referencias de los años ochenta. Porque empecé a bailar esas canciones.

AmyJune Hineline: De hecho, hago otra presentación en la comunidad de accesibilidad en la que hablo de textos alternativos y también utilizo imágenes de los ochenta para ello. Es muy divertido.

Matt Graham: Así que, um, una de [00:37:00] las preguntas que, uh, quiero decir, sólo desde el título de, de su, de su charla, hago un montón de, bueno, yo soy un profesional independiente, pero también trabajo con las agencias como un profesional independiente. Así que, ¿tienes algún tipo de consejos o trucos para aquellos de nosotros que están a caballo entre las dos líneas?

AmyJune Hineline: Bueno, no. Porque usted debe saber, como, usted sabe, usted podría tener su propio flujo de trabajo, pero de nuevo, como el trabajo con las agencias es diferente, ya sabes, y cada agencia es un poco diferente. Así que el aprendizaje de su flujo de trabajo, ya sabes, eh, creo que podría ser más complicado como un profesional independiente que trabaja con diferentes organizaciones, porque algunas personas pueden nombrar a sus ramas diferentes o no podría ser el uso de diferentes hosts locales o que podría ser el uso de diferentes sistemas de control de versiones, ¿sabes?

AmyJune Hineline: Así que. Yo, creo que eso complica ser un freelance cuando trabajas con agencias, porque tienes que aprender el flujo de trabajo de todos. Así que no tengo ningún consejo para ti, excepto que está bien.

Matt Graham: Bueno, eso es justo. Es justo. Yo, [00:38:00] ya sabes, me imagino que lo intentaré. Um, sí. Porque es, es verdad. Como estás, estás, estás justo en el dinero.

Matt Graham: Es el salvaje oeste. Y quiero decir, dependiendo de. Uh, como un profesional independiente, dependiendo de la cantidad de tiempo que se le da usted podría estar haciendo por el libro como, como una agencia lo haría, o usted podría ser como, oh, tengo que codificar esto tan rápido como pueda. Así que sí, quiero decir, es, es, uh.

AmyJune Hineline: Creo que en parte. Es difícil, sobre todo si has sido autónomo durante mucho tiempo, ya que no tienes esa responsabilidad con el equipo.

AmyJune Hineline: Correcto. Así que usted es como, tomar esos atajos o el nombre de la rama, esto es una rama, o esto es una solución. Y yo, ya sabes, en lugar de hacer tus mensajes de confirmación. Derecho. Así que, um, hay definitivamente como más responsabilidad, ya sabes, cuando estás trabajando con un equipo, creo.

Matt Graham: Sí, absolutamente. Bueno, y es gracioso también, porque como yo también he sido el único [00:39:00] desarrollador en una agencia. Uh, y eso es casi tan salvaje como, uh, como ser un independiente. Así que es una especie de, de nuevo, a caballo entre la línea, pero, ya sabes, y todavía Git el mismo tipo de cosa. ¿Voy a hacer esto bien? O si esto hace usted sabe, seis días antes de que realmente antes de que pueda físicamente Git hecho. Así que, um, creo, um, sí, uh, sí, no parece que estamos Git cualquier reunión, cualquier pregunta.

Matt Graham: Um,

Rachel Winchester: Bueno, creo que tengo una pregunta de seguimiento a lo que acaba de preguntar Matt soy AmyJune. ¿Tienes alguna experiencia, supongo, eh, de consultoría y, y ayudar a la gente la transición de, eh, el desarrollo independiente a trabajar para una agencia más grande?

AmyJune Hineline: No, pero tengo la experiencia de contribuir de nuevo a la fuente abierta, que es una especie de ese mismo flujo de trabajo. Ya sabes, trabajamos con otros, ya sabes, de la mayoría de las veces, cuando pensamos en como contribuir de nuevo al trabajo, uh, WordPress, que [00:40:00] tienen la cola de la pista, que tipo de espejos, flujo de trabajo de la agencia. Todos trabajamos juntos. Enviamos tickets, colaboramos. Hacemos solicitudes de fusión. Hacemos parches. Así que tengo ese tipo de experiencia, pero, um, no suelo, uh, uh, Eso es como todo el mundo tiene sus propias habilidades y roles.

AmyJune Hineline: Sí. Y ese es el papel del director técnico o del director técnico del proyecto, que yo no soy.

Matt Graham: Muy bien. Um, bueno, creo que vamos a concluir esto. Um, quiero agradecer a nuestros patrocinadores, uh, para esto, para WordFest. Es Bluehost, Cloudways, GoDaddy Pro, Nexcess, Yoast, y weglot, por favor asegúrese de visitar sus tiendas y charlar con ellos allí. Puede que incluso ganes un premio. Así que no se olvide de obtener su foto en la cabina de fotos y [00:41:00] tweet con el hashtag WordFest Live.

Matt Graham: También gracias a nuestros socios de los medios de comunicación y nuestro micro patrocinador. Así que en la carpa de la comunidad para los próximos, eh, 53 minutos, eh, tenemos Cloudways, eh, están entregando el lanzamiento con palabras, la toma de la carpa con Bridget Willard. Um, así que hay un descanso de una hora en el programa de la segunda etapa en este momento. Así que diríjanse a la carpa de la comunidad, volveremos en una hora a la 01:00 UTC. Haces que todos nuestros Grandes Corazones Naranjas estén llenos. [00:42:00]

Comparta esta sesión