Empecé a aprender git en los últimos días y tengo una pregunta básica.¿Cómo puedo descartar los cambios locales en mi repositorio de Git cuando saco una nueva versión de github?
Imagínese esta situación:
crea una carpeta vacía y ahí se crea un archivo foo.txt.
Con el fin de empujar los datos en el repositorio remoto (por ejemplo github), realizar los siguientes comandos:
git init
-> con el fin de inicializar el repositorio en la carpetagit add .
-> en para añadir al índice de todos los archivos de la carpeta, en este caso foo.txtgit commit -m "First commit"
-> Nos comprometemos hacer la primeragit remote add origin [email protected]:username/gitrepository.git
-> Añadimos el repositorio gitHubgit push origin master
-> empujamos los cambios al repositorio remotoAhora en el repositorio GitHub tiene sólo un archivo foo.txt.
Ahora está en otra máquina y desea utilizar el repositorio, por lo que crea una carpeta vacía y extrae los datos del repositorio remoto.
Luego crea un archivo llamado bar.txt, elimina foo.txt, agrega el archivo (bar.txt) al índice, realiza una confirmación y envía los cambios al repositorio remoto.Ahora en el repositorio que tienen sólo el archivo bar.txt
Pero ahora, en la primera máquina aún tenemos el archivo foo.txt, y si hacemos un tirón desde el repositorio remoto tenemos foo .txt y bar.txt.
Pero eso no es lo que me gustaría hacer, me gustaría tirar de todos los archivos desde el repositorio y trabajar sólo con esos archivos. Entonces, en este ejemplo, si solo tengo ahora bar.txt en el repositorio, cuando realizo una extracción, no quiero ningún otro archivo en la carpeta de mi proyecto.
¿Cómo lo logras?
creo haberme explicado mal. Imagine que tiene en un repositorio solamente una barra .tx t archivo, y en casa tiene su directorio de trabajo con un foo.txt. Si haces un pull desde github, tendrías tanto bar.txt como foo.txt en tu directorio de trabajo. Pero no quiero hacer eso, me gustaría tener el repositorio de github limpio cada vez que hago una extracción, lo que significa que si tengo solo bar.txt en github, cuando hago un pull solo quiero bar.txt en mi carpeta de trabajo y no más archivos. – rfc1484
Un pull es un "fetch + merge". Si lo entiendo, no quiere una fusión con sus cambios locales. Aquí hay una manera de hacerlo, pero debo advertirle: sus cambios locales, incluso los cometidos, se perderán. PRIMERO: "origen de búsqueda de git" (en lugar de tirar). ENTONCES: "git reset --hard origin/master". –
Eso es exactamente lo que necesitaba, ¡gracias! – rfc1484