¿Cómo descartar cambios no confirmados en SourceTree?

Soy nuevo en el entorno Git, y estoy usando BitBucket con SourceTree en Mac. Todo lo que quiero hacer ahora es descartar los cambios desde la última confirmación. ¿Cómo debería hacer esto? No he encontrado nada como "descartar cambios", y el hecho de tirar directamente de la última confirmación no parece funcionar. Las soluciones hechas con la GUI o la command-line serán buenas. Gracias.

Me gusta usar

 git stash 

Esto almacena todos los cambios no confirmados en el alijo . Si desea descartar estos cambios más adelante, simplemente git stash drop (o git stash pop para restaurarlos).

Aunque técnicamente esta no es la forma "correcta" de descartar los cambios (como han señalado otras respuestas y comentarios).

En SourceTree para Mac , haga clic con el button derecho en los files que desea descartar (en Archivos en la list de treees de trabajo ) y select Restablecer .

En SourceTree para Windows , haga clic con el button derecho en los files que desea descartar (en la list Cambios en la copy de trabajo ) y elija Descartar .

En git , simplemente harías:

git reset --hard para descartar los cambios realizados en los files versionados;

git clean -xdf para borrar files nuevos (sin seguimiento ), incluidos los ignorados (la opción x ). d es también eliminar directorys no rastreados y f para forzar.

Desde la GUI de sourcetree, click la dirección de trabajo, haga clic con el button derecho en el (los) file (s) que desea descartar y luego click Descartar.

Ok, me di count de que mi pregunta ya estaba respondida en el título de la pregunta.

Para dejar de usar los files, use

 git reset HEAD /file/name 

Y para deshacer los cambios en un file

 git checkout -- /file/name 

Si tiene un lote de files dentro de una carpeta, puede deshacer la carpeta completa

 git checkout -- /folder/name 

Tenga en count que todos estos commands ya se muestran cuando se git status

Aquí creé un repository ficticio y enumeré las 3 posibilidades

 # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: test # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: test2 # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # test3 

En el file sin escena, click los tres puntos en el lado derecho. Una vez que click él, aparecerá un menu de popover donde podrá luego Discard file .