¿Cómo actualizar Git local cuando he presionado desde otra máquina?

Configuro un git repo en la máquina de la escuela y luego clono el mismo repository en otra máquina doméstica. He comprometido y empujado en la máquina de casa ahora quiero actualizar el cambio a la máquina de la escuela. ¿Que debería hacer? Intenté git remote update pero no se actualizó cuando revisé los files.

Simplemente ejecute este command en la máquina de su escuela:

git pull origin master

Espero eso ayude.

lo hiciste mal 🙂

Si está utilizando el repository no como un repository simple en una máquina de la escuela, necesita

git reset –hard

después de presionarlo, porque usted acaba de actualizar ref no es una copy de trabajo

mucho mejor es usar un repository simple y tirar / empujar desde otra máquina / repository Git en el server

Ya que etiquetó la pregunta con bitbucket , voy a hacer las siguientes suposiciones. Si alguna de estas suposiciones no es correcta, aclare en su pregunta y actualizaré esta respuesta.

  • hay tres (3) repositorys totales
    • uno en bitbucket
    • un clon del repository bitbucket en la máquina de la escuela
    • un clon del repository bitbucket en su sistema hogareño.
  • en el clon de inicio, pasos similares a:
    • git add <changes>
    • git commit -m '<message>'
    • git push <remote> <branch>
  • en el clon de la escuela
    • git remote update

La git remote update obtuvo los cambios en todos los controles remotos, de modo que si los cambios realizados por el repository de inicio están en el mismo control remoto, se cargaron en el repository del sistema esqueuer.

La key aquí es que el repository es la carpeta .git , por lo que se actualizaron los .git , pero la copy de trabajo no. Para actualizar la copy de trabajo, deberá fusionar los cambios obtenidos en el repository local con el directory de trabajo. Esto se hace con un git merge <options> .


Si mis suposiciones, basadas en sus tags, no son correctas y solo existen los dos repositorys; escuela y hogar Luego debe git merge <options> para llevar los cambios a su copy de trabajo, a less que tenga también cambios locales; en ese caso, haga algo similar a lo siguiente si

 git stash git merge <options> git stash pop 

En este punto, resuelva cualquier conflicto entre los cambios locales extraídos del alijo y la confirmación.

Si no desea mantener los cambios en su copy local, puede devolver la copy de trabajo al estado de la última confirmación con un git reset --hard .


Una última palabra de advertencia, no ingrese a un repository no desnudo si puede evitarlo, y generalmente puede hacerlo. Es mucho mejor para el repository de la escuela extraer (search / fusionar) los cambios del repository de la casa de lo que es para el repository de la casa para enviar al depósito de la escuela.