que estaba previsto instalar en un servidor remoto¿Cómo configurar un gancho Git para que después de presionar a ssh: //[email protected]/~/bar.com.git, vaya a ~/bar.com y haga un git pull?
foo.com/~/bar.com # live webpage content
foo.com/~/bar.com.git # a bare repo
así, de mi máquina local, que pueda hacer un
git push
y va a empujar a foo.com/~/bar.com.git
en la máquina remota (el pleno camino es ssh://[email protected]/~/bar.com.git
¿Cómo puede ser añadido un gancho , de manera que después de que el empuje, el servidor remoto cd ~/bar.com
y hacer un git pull
para que todo el contenido se actualice (lo mismo que la máquina local)? (Sin necesidad de ejecutar git update
como por Mercurial?)
(esto está relacionado con Cannot git clone a folder on a server and then edit and git push? ahora puedo ssh a foo.com
y cd ~/bar.com
y esperar allí y hacer un git pull
siempre después de un git push
desde la máquina local, pero sería sea bueno tenerlo hecho automáticamente)
Actualización: por favor, solo envíe una respuesta si conoce detalles específicos y cómo hacerlo. Si busca en Google y publica el primer o segundo resultado de google aquí, no lo va a ayudar.
Actualización 2: Fui a ~/bar.com.git/hooks
y añadir un nuevo archivo post-receive
con el contenido:
#!/bin/bash
cd ~/bar.com
git pull ../bar.com.git master
y también chmod 755 post-receive
, y si puedo editar un archivo en la máquina local, y luego git com -m "ok"
y git push
, no hace que el cambio vaya a la carpeta de la máquina remota ~/bar.com
Creo que sé algo como esto, pero ¿cómo? ¿Cuáles son los detalles? también puedes decir "ve a comprar el libro de Git" y la respuesta es –
"post-recepción" es simplemente un script de shell. Puedes poner cualquier cosa ahí. – troelskn
Consulte la actualización 2 –