2011-11-12 18 views
9

Estoy trabajando en un proyecto en Intellij IDEA. Moví algunos paquetes refactorizados. Sin embargo, quiero deshacer mis cambios. Cuando haga clic en el botón que dice RevertIntellij IDEA Can not Undo

Cannot Undo

y muestra una lista conforme a lo siguiente:

Following files affected by this action have been already changed

¿Cómo puedo volver a mis cambios porque he perdido algunos paquetes y clases. ¿Intellij IDEA los mantiene dentro de una carpeta temporal?

PS: Uso open jdk 1.6.0 en una computadora Ubuntu de 64 bits.

Respuesta

14

IntelliJ IDEA tiene una gran característica llamada como historia local. Podría revertir mis cambios. Hay un video da un ejemplo detallado para ello:

http://www.jetbrains.com/idea/training/demos/local_history.html

, usted puede obtener más información desde aquí: http://jetbrains.com/help/idea/2016.1/using-local-history.html

+0

Gracias a Serge Baranov del equipo de soporte de Intellij IDEA. Él respondió mi pregunta de inmediato cuando pregunté desde la página de soporte. – kamaci

+0

Sí, los chicos de soporte de IntelliJ son increíbles, esa es una de las razones (no la única) para la que prefiero IntelliJ sobre Eclipse – Guillaume

+0

Pero en caso de que quiera revertir el cambio, realmente quiero revertir el cambio. pero todavía se muestra en la comprobación desde el directorio. Mantener la historia local es una cosa, pero mantener la historia del SVN es otra. Espero que el intellij no muestre nada en el compromiso SVN o revertir una vez que el archivo ha sido revertido. –

2

Como ya he buscado en Google a aquí varias veces en que el desarrollo de IntelliJ complemento emacsIDEAs, me dejaré mi solución aquí para alguien que la necesite. .

suelen cambiar al documento necesita ser hecho en runWriteAction, y para deshacer los cambios al documento denominado necesidad de CommandProcessor.getInstance() ExecuteCommand

lo que la solución es: llamar ExecuteCommand en runWriteAction, entonces los cambios se podrán deshacer.

protected Runnable getRunnableWrapper(final Runnable runnable) { 
    return new Runnable() { 
     @Override 
     public void run() { 
      CommandProcessor.getInstance().executeCommand(_editor.getProject(), runnable, "cut", ActionGroup.EMPTY_GROUP); 
     } 
    }; 
} 

final Runnable runnable = new Runnable() { 
    @Override 
    public void run() { 
     selectJumpArea(jumpTargetOffset); 
     _editor.getSelectionModel().copySelectionToClipboard(); 
     EditorModificationUtil.deleteSelectedText(_editor); 
     _editor.getSelectionModel().removeSelection(); 
    } 
}; 

ApplicationManager.getApplication().runWriteAction(getRunnableWrapper(runnable)); 

código de recompra: https://github.com/whunmr/emacsIDEAs

12

Deshacer a través de VCS -> Historia Local -> Mostrar historial.