如何切换到特定的Git提交而不丢失所有的提交之后?

我希望本地文件将被更改,但提交的数据库将保持不变,只有当前位置指针被设置为当前选定的提交。

我想改变文件的状态到特定的提交,运行项目,当完成时,将文件恢复到上次提交。

如何做到这一点,而不压缩整个项目的文件夹?