Git / Dreamweaver – Trabajando con sucursales

Recientemente comencé a trabajar con sucursales en Git. También uso Adobe Dreamweaver CS6. Estoy tratando de usar la twig principal como mi directory "en vivo" que es el código real en vivo en mi website. Me gustaría utilizar otras twigs básicamente para probar con código, fusionarlas con la twig principal para enviar el producto final. En Dreamweaver tengo la carpeta del sitio local configurada en el repository de Git. En Dreamweaver también lo tengo configurado para cargar files automáticamente en save. El único problema con eso es que ahora cada vez que guardo un file en Dreamweaver en la twig principal u otra twig, los files se cargan automáticamente en FTP, ya sea que los quiera o no. Creo que de alguna manera tendré que hacer que las twigs sean exclusivas de Dreamweaver para que no cargue automáticamente los cambios en el file principal de la sucursal. ¿Cómo puedo solucionar este problema?

Puede usar git para que su website se actualice automáticamente, en lugar de usar FTP para transferir los files modificados. Describiré una configuration simplificada que permite actualizar el código en el server web cuando se cambian a la twig principal usando git, y aunque esto es una simplificación, espero que pueda servir como reference (he visto este patrón muchas veces, así que espero que sea útil).

  1. Cree un repository desnudo (también conocido como remoto) (existen services gratuitos y comerciales en línea como github o bitbucket o puede tener su propio server para este fin [a menudo en un entorno empresarial]). Este repository actúa como un intermediario entre las copys locales de los desarrolladores y el server de producción.

    (ver la reference )

  2. Dirige tu repository git local al control remoto

    git remote add origin git://example.com/repo/project.git

    (ver la reference )

  3. Empujar todas las twigs y tags del repository local al control remoto

    git push --all
    git push --tags

  4. Cree un gancho git para actualizar la copy del server cuando se lo envía a la twig principal. Git hook es una secuencia de commands con un nombre pnetworkingefinido que puedes colocar en la carpeta hooks en la raíz del repository.

    (ver la reference )

    Este paso requiere que git esté instalado en el server web también si el repository vacío está en una máquina diferente (entonces también podría ser necesario tener acceso SSH al server web).

Ahora, cuando actualiza el código en su máquina local y desea publicar los cambios para actualizar el website activo, simplemente inserta los cambios comprometidos en la twig principal:

git commit ...
git push

Suponiendo que el gancho git del paso 4 está configurado para actualizar el website solo cuando se empuja la twig principal, puede usar otras twigs para el desarrollo y las testings.

También puede interesarle el process de Integración Continua o el software de compilation como Jenkins CI o Hudson CI.

Este es de alguna manera un enfoque más general que no está limitado a un editor específico o IDE como Dreamweaver, pero espero que esto aún ayude.