Pycharm之远程代码编辑

我们经常会有这样的情况:在本地IDE编辑代码,然后把代码通过svn或者git等工具,甚至是直接scp等拷贝到服务器上来跑。
但是,对个人项目,有些不需要版本管理工具(或者说,加了版本控制工具会变得更复杂,毕竟只是给自己用的),那么怎么办呢?

最近发现Pycharm除了svn和git等版本控制工具以外,本身还提供了一个Deployment工具,可以直接整合上述流程,将本地代码和服务器代码做一个映射,然后修改本地代码时,自动或手动上传服务器同步,然后通过Pycharm的SSH Terminal重启进程验证。

下面将基于Pycharm 2017.3 专业版进行配置的介绍。

注意:Pycharm只有Professional版本才有Deployment这个功能!

1. 菜单->Tools->Deployment->Configuration

这里写图片描述

2. Configuration设置

这步需要添加:① 需要连接的服务器——填入ip,用户名和密码,协议(有FTPFTPSSFTP三种),我用的是SFTP
这里写图片描述

3. 配置代码映射,例如将本地的decorator代码,映射到服务器上的remote_test下的decorator

代码映射在Mappings下面,其中:Local path——本地目录;Deployment path on server xxx——部署目录。
这里写图片描述

映射结果,可以看到在远程/home/lthpc/gdh/remote_test下有decorator文件夹了!
这里写图片描述

4. 配置自动上传修改的文件(菜单->Tools->Deployment->Options)

将“Upload changed files automatically to the default server”改为 “On explicit save action”,然后当每次执行Ctrl+s的时候,最新的代码就自动上传到服务器对应位置。

这里写图片描述

5. 运行SSH Session

Deployment配置好之后,直接运行SSH Session,就可以在Pycharm中,开一个SSH终端,可以很方便的进行调试之类的操作。
这里写图片描述

总结

自此,远程配置部署已经完成,可以通过Pycharm专业版提供的这个功能高效的在本地修改代码,在服务器上调试。

### 设置和执行远程调试 为了在 PyCharm 中配置并运行针对远程服务器上应用程序的调试会话,需遵循特定流程来确保本地开发环境能与远端进程有效交互。此过程涉及安装必要的软件包,在目标机器上启动带有特殊参数的应用程序以及配置 IDE 的调试器选项。 #### 安装依赖项 确保远程主机已安装 `pydevd-pycharm` 或者等效版本库。这可以通过 pip 来完成: ```bash pip install pydevd-pycharm~=202.6948.75 ``` 该命令将下载适用于当前使用的 PyCharm 版本的调试工具[^1]。 #### 修改应用入口文件 编辑待调试项目的启动脚本或主模块,加入如下几行代码以便于连接到本地监听中的 PyCharm 调试服务: ```python import sys sys.path.append('/path/to/pycharm-debug.egg') import pydevd_pycharm pydevd_pycharm.settrace('localhost', port=12345, stdoutToServer=True, stderrToServer=True) ``` 上述片段中 `/path/to/pycharm-debug.egg` 应替换为实际路径;而 `'localhost'` 和 `port=12345` 则指定了要建立反向连接的目标地址及端口号。当应用程序到达这段代码时将会暂停等待来自指定位置的指令。 #### 配置PyCharm项目 打开 PyCharm 并导航至 "Run | Edit Configurations..." 创建新的 “Python Remote Debug” 运行/调试配置。在此界面内填写之前设定好的 IP 地址(通常是 localhost)、端口以及其他必要字段。保存更改后即可准备发起调试请求。 #### 启动远程解释器 通过 SSH 协议链接至部署有 Python 程序的服务节点,并按照修改后的引导方式激活它。一旦成功触发了 `settrace()` 函数调用,则会在终端显示一条消息表明正在尝试接入调试客户端——即此时应立即切换回 PyCharm 执行对应的调试配置。 #### 开始调试环节 随着两个组件之间的握手完成,现在可以在图形界面上设置断点、检查变量状态或是逐步跟踪函数调用了。值得注意的是,尽管能够处理大多数类型的 Web 框架如 Django 和 Flask,但对于某些异步特性可能仍存在局限性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值