平常开发中,常常会遇到在当前分支开发到一半,可是须要Checkout上个版本解决bug或调查问题的状况。这个时候,咱们是将代码提到Push远程?仍是直接Rollback?blog
最理想的作法,就是将当前的开发分支修改的代码暂存起来,而后将开发分支恢复到最初的状态,再切换到咱们须要的分支去处理问题,处理完成后,咱们还能够切换到开发分支上,将暂存的代码恢复回来,继续开发。开发
在IDEA中,就有一个这样的功能,叫作Shelve Changes。Shelve的中文意思是“搁置;将。。。放到架子上”,看到它的中文含义,相信读者会更加明白它的做用。it
Shelve使用起来很简单,在IDEA下方的Git面板中(IDEA 2020中是Git,2020版本以前是VersionControl),有一个部分叫作Local Changes,这里面是咱们在当前分支作的全部的修改,以下:
io
在Local Changes中,咱们能够自行选择须要搁置的代码(能够多选),而后右键选择“Shelve Changes”,以下:
bug
在弹出的Shelve Changes窗口中,须要填写一下搁置备注(方便之后确认须要恢复的代码,很贴心的功能),最后点击【Shelve Changes】按钮便可将代码搁置起来,以下:
im
代码搁置完成后,咱们能够在Git面板中的Shelf中,查看被搁置起来的代码,以下:
db
当开发分支的已修改代码都被搁置的时候,就能够直接切换分支了,不需Push或Rollback了。
若是想要将被搁置的代码恢复,只须要选中被搁置的代码,而后右键选择“UnShelve Changes”便可,再弹出的“UnShelve Changes”窗口中,直接点击【UnShelve Changes】按钮便可恢复代码,以下:
img
固然,咱们也能够直接将被搁置的代码删除掉,以下:
di
可是若是搁置代码没有恢复,那么被删除的搁置代码不就没了吗?难道还要从新开发?IDEA贴心就在于,被误删除的搁置代码能够在“Recently Deleted”中找到并恢复,绝对的手残友好党...以下:
loading
固然,在“Recently Deleted”还能够再一次进行删除操做,此次删除,可就真的删除了,找不回来的...以下:
以上就是IDEA中很实用的Shelve功能的一个使用介绍,有问题能够留言,看到必回。