¿Cuál es la diferencia entre los comandos <strong>git rm --forced</strong> y <strong>git reset --hard</strong>?

Pregunta de la clase:
Git reset vs. Git rm
Kenyi Julberht Hancco Quispe

Kenyi Julberht Hancco Quispe

Pregunta
student
hace 4 años

¿Cuál es la diferencia entre los comandos git rm --forced y git reset --hard?

4 respuestas
para escribir tu comentario
    Kenyi Julberht Hancco Quispe

    Kenyi Julberht Hancco Quispe

    student
    hace 4 años

    Me quedo más claro, gracias!

    Luis Gerardo

    Luis Gerardo

    student
    hace 4 años

    Hola, @Kenyihq es --force no --forced. Con git rm borras los archivos (en el caso de --force fuerza el borrado sin "chistar"), con git reset reseteas el estado a algún commit anterior (en el caso de --hard el reseteo es definitivo).

    Cristian Ramos

    Cristian Ramos

    student
    hace 4 años

    git rm --cached: Elimina los archivos del área de Staging y del próximo commit pero los mantiene en nuestro disco duro.

    git rm --force: Elimina los archivos de Git y del disco duro. Git siempre guarda todo, por lo que podemos acceder al registro de la existencia de los archivos, de modo que podremos recuperarlos si es necesario (pero debemos usar comandos más avanzados).

    git reset Este comando nos ayuda a volver en el tiempo. Pero no como git checkout que nos deja ir, mirar, pasear y volver. Con git reset volvemos al pasado sin la posibilidad de volver al futuro. Borramos la historia y la debemos sobreescribir. No hay vuelta atrás. Este comando es muy peligroso y debemos usarlo solo en caso de emergencia. Recuerda que debemos usar alguna de estas dos opciones: Hay dos formas de usar git reset: con el argumento --hard, borrando toda la información que tengamos en el área de staging (y perdiendo todo para siempre). O, un poco más seguro, con el argumento --soft, que mantiene allí los archivos del área de staging para que podamos aplicar nuestros últimos cambios pero desde un commit anterior. git reset --soft: Borramos todo el historial y los registros de Git pero guardamos los cambios que tengamos en Staging, así podemos aplicar las últimas actualizaciones a un nuevo commit. git reset --hard: Borra todo. Todo todito, absolutamente todo. Toda la información de los commits y del área de staging se borra del historial. ¡Pero todavía falta algo! git reset HEAD: Este es el comando para sacar archivos del área de Staging. No para borrarlos ni nada de eso, solo para que los últimos cambios de estos archivos no se envíen al último commit, a menos que cambiemos de opinión y los incluyamos de nuevo en staging con git add, por supuesto.

Curso de Git y Github [Empieza Gratis]

Curso de Git y Github [Empieza Gratis]

Deja de versionar tus proyectos usando tu propio sistema de control de versiones. Mejor usa Git, el sistema de control de versiones por excelencia que utiliza la industria tecnológica. Aprende a trabajar con git, conceptos básicos, clonar un repositorio y gestionar tus proyectos alojándolos en tu repositorio local y en GitHub.

Curso de Git y Github [Empieza Gratis]
Curso de Git y Github [Empieza Gratis]

Curso de Git y Github [Empieza Gratis]

Deja de versionar tus proyectos usando tu propio sistema de control de versiones. Mejor usa Git, el sistema de control de versiones por excelencia que utiliza la industria tecnológica. Aprende a trabajar con git, conceptos básicos, clonar un repositorio y gestionar tus proyectos alojándolos en tu repositorio local y en GitHub.