Soy principalmente un usuario de Windows, pero hago la mayor parte de mi desarrollo (esencialmente desarrollo web) utilizando herramientas y software de Unix. He estado yendo y viniendo entre usar una máquina virtual lubuntu dedicada en Virtualbox y usar algunas herramientas directamente en Windows (msgit, python, django), pero ninguno de estos enfoques es completamente satisfactorio.
Me gustaría conocer las formas en que otros desarrolladores utilizan para integrar mejor un flujo de trabajo de Unix en Windows. Por ejemplo, una integración más estrecha entre Linux y VM y Windows. La demostración vagabunda mostró cómo una máquina virtual podría funcionar desde una carpeta de proyecto de Windows y eso me pareció agradable. Me gustaría conocer otras herramientas y consejos que ayudarían a imitar el flujo de trabajo que uno puede encontrar en OS X (por supuesto, entiendo que no puede estar tan bien integrado en Windows como no tiene los mismos fundamentos de Unix).
PD: también he probado cygwin
EDITAR para obtener aclaraciones sobre lo que me parece que falta (gracias a axblount por señalar eso): las herramientas de Unix como msys et al no funcionan tan bien como sus contrapartes unic nativas. Muchos scripts, los instaladores requieren una configuración adicional o no funcionan en absoluto. Por ejemplo, hacer que virtualenvwrapper funcione no es muy sencillo. virtualbox: idealmente me gustaría usar el software de Windows (Photoshop, Sublime Text 2) sin problemas con Linux. Principalmente uso un cajero automático de cliente FTP para mover archivos editados en el lado de Windows, lo cual es un proceso tedioso.
RESUMEN: Parece que no hay soluciones establecidas. Como solución temporal, probablemente intentaré usar las versiones nativas de frameworks y bibliotecas a través de la línea de comandos de Windows cuando sea posible y cambiar a una herramienta como vagabundo para programas incompatibles.
MÁS INFORMACIÓN DE RESPUESTAS Y COMENTARIOS: El problema de la sensibilidad a las mayúsculas y minúsculas parece funcionar contra Windows como lo señaló @GlenPeterson
fuente
Respuestas:
La mayor parte de su desarrollo (esencialmente desarrollo web) utiliza herramientas y software de Unix.
Ha probado diferentes alternativas para usar esas herramientas en Windows, pero a partir de ahora, no ha encontrado una que funcione tan bien como la real.
Entonces realmente debería considerar migrarse a Linux como su sistema operativo de escritorio y virtualizar Windows para todo lo demás.
Créeme, no te arrepentirás. Su escritorio será más rápido, más seguro, sin virus y tendrá todas las herramientas que necesita para sus proyectos de desarrollo.
EDITAR:
Acomodando un gran comentario de @GlenPeterson:
Si está implementando en Unix / Linux, entonces debería estar trabajando en un sistema operativo sensible a mayúsculas y minúsculas. La insensibilidad de mayúsculas y minúsculas de Windows puede causarle problemas algún día.
fuente
Si está implementando su software en servidores Linux, debería practicar la implementación de su software en un servidor Linux (incluso en una VM). Haga que su proceso de implementación sea automático. La parte más importante es la distribución e implementación de código. Debe construir e implementar de manera consistente en su tipo de sistema de destino.
Búscate un buen terminal y aprende a usarlo. Uso Putty y he encontrado que es mucho mejor que cygwin y msys.
Algunos sistemas de integración continua le permiten ejecutar y probar el código de forma remota antes de permitir que se confirme en su VCS. El uso de esta funcionalidad en su tipo de sistema de destino puede evitar muchos problemas.
fuente
Si está ejecutando una versión reciente de Windows, eche un vistazo a SUA , el subsistema para aplicaciones Unix. Tiene un shell (ksh) y admite más de 300 comandos y utilidades comunes de Unix. La mayoría de los documentos hablan sobre Server 2003 R2, pero también se instala en Windows 7.
fuente