2012-05-09 8 views
6

Estoy tratando de crear una versión totalmente portátil de git en una unidad USB con sus propias claves SSH y quiero que funcione independientemente de la letra de la unidad de windows que lo da. He instalado git portátil y la mayoría funciona. El problema que tengo es establecer el $HOME ser dinámico quiero que apunte a /DRIVELETTER/PortableApps/PortableGit así que cuando generar y utilizar mis claves SSH se vaya a /DRIVELETTER/PortableApps/PortableGit/.ssh/Verdaderamente portátil Git

En este momento $HOME es / y hace que la ruta predeterminada para la generación de ssh //.ssh/id_rsa que no existe. He encontrado un sitio que dice "SET IT TO /e/bla/bla/bla/", pero eso no funciona si la letra de la unidad es J.

No he encontrado ninguna buena guía para configurar git verdaderamente portátil.

Gracias por cualquier ayuda Munchies

+0

Estás loco. Las unidades flash tienen una capacidad de escritura limitada antes de que no se puedan usar. alrededor de 100,000 escribe por byte. Git destruirá esa cosa en poco tiempo. Espero que estés listo para que surjan muchos errores ... ja, ja, ahora si estás usando "hardware real", es posible que estés llegando a alguna parte ... Esta no es una pregunta de programación, debes consultar a tus desarrolladores de git portátiles y a tu cygwin. documentación para configurar el entorno según sus propias especificaciones. –

+0

@Triston: "¿Quieres hacer una caja de virus una caja de desarrollo"? ¿Qué? –

+0

Confía en mí. Estoy mucho más cómodo en un entorno de línea de comandos estilo Unix, sin embargo, esa no es una opción en este momento. Necesito algo para ponerme en las ventanas. También estoy bien si esta unidad de disco duro solo dura un año. – Munchies

Respuesta

3

En un archivo por lotes primero hacer

for /F "delims=\: usebackq" %%i in (`cd`) do SET USB_DRIVE=%%i 

a continuación, el resto del tiempo (en archivos por lotes) utiliza %USB_DRIVE% en lugar de d: o la letra que es .

+0

Gracias. A partir de eso, utilicé 'HOME =/$ (echo $ USB_DRIVE | awk '{print substr ($ 0,0,1)}')/PortableApps/PortableGit' para quitar el ':' de la letra de la unidad y funciona. Muchas gracias – Munchies