在搞深度学习的时候,我们在本地开发,但是需要在服务器去运行工程,所以需要使用Pycharm进行远程配置,可以实现本地代码自动同步到服务器,并在本地使用服务器的解释器。
条件:需要使用专业版Pycharm。
远程部署
点击菜单栏Tools——Deployment——Configuration
点“+”,新建一个SFTP类型的Deployment配置:
我给新的配置命名为“remote”:
选择Connection栏,填入服务器的IP、帐号、密码,并点击“Test Connection”测试是否可以链接。将编码类型改为“utf-8”:
选择Connection栏,填入本地代码的路径:
选择Excluded Paths栏,添加本地不需要同步的文件夹:
最后点击OK确定,完成远程部署的配置。
远程解释器
远程部署可以实现代码的自动同步,接下来还要配置远程解释器。
首先拷贝本地Pycharm安装目录下的helpers目录中的所有文件,上传到远程服务器的登录用户目录下。例如,我使用的是root用户,则拷贝至/root/.pycharm_helpers目录下。
在Pycharm中选择File -> Settings -> Project:learn -> Project Interpreter -> Add
选择SSH解释器,输入服务器的IP、帐号,点击Next,然后输入密码:
选择服务器上的Python解释器:
选择代码存放地址,我本地的地址是E:/project/learn
,服务器上的地址是/app/learn
;
然后点击确定即可。此时Pycharm底部会出现File Transfer
栏,显示代码文件的同步信息:
此时运行代码,使用的就是服务器的Python解释器。后续对代码的每一次修改,都会在保存后自动上传服务器。
常见问题
在文件同步过程中,若出现报错:
Failed to change timestamp of the file
选择菜单栏Tool——Deployment——Options,取消选中Preferve files timestamps
:
画红线处的√即可。