PyCharm远程开发和调试

配置远程Python解释器

选择File-->Settings-->Project: xxxx-->Project Interpreter, (xxxx是项目根目录), 然后在右边, 点击小齿轮设置, 点击"Add Remote", 勾选SSH Credentials, 配置相关信息:

Host: IP
Port: 22
User name: test
Auth type: password # (Key, OpenSSH)
Password: *****
Project Interpreter path: /usr/bin/python

如果Project Interpreter path是使用的虚拟环境, 那么填写虚拟环境路径下的Python, 如/home/user/.envs/dev/bin/python. 同时选择Python版本.

配置远程服务器

配置连接

在工具栏点击Tools-->Deployment-->Configuration..., 然后在新的窗口的左上角点击+号, 新建一个连接.

输入新的连接的名称Name和类型Type(FTPSFTPFTPSIn placeLocal or mounted folder), 例如:

Name: VirtualBox
Type: SFTP

点击OK, 在连接详细配置中的Upload/download project files下, 配置:

SFTP host: 127.0.0.1
Port: 6666
Root path: /home/user/workspace
User name: user
Auth type: password
Password: ******

SFTP host是远程服务器的IP地址.

PortSSH的端口.

Root path是项目文件上传的路径, 必须真实存在, PyCharm不会自动创建, 可以在配置好User namePassword后, 点击Root path输入框后的..., 手动选择远程服务器的目录.

Auth type是验证类型, 有passwordKey pair(OpenSSH or PuTTY)OpenSSH config and authentication agent.

推荐使用Key pair(OpenSSH or PuTTY), 使用Key需要先配置一些相关的信息, Windows上需要安装Git, 以便使用自带openssh的一些功能, 下载Git客户端, 双击安装. 这个网上有教程.

Windows上和LinuxGit会自动处理换行符的问题, 但是这个在实际开发中会出现问题, 所以, 在Windows上使用提交时转换为LF,检出时不转换功能, 统一使用Unix换行符(也可以在类Unix上启用这个功能, 将拉取的没有改变的换行符更换). 在打开安装好的Git Bash, 输入:

git config --global core.autocrlf input

含义:

AutoCRLF
# 提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true

# 提交时转换为LF,检出时不转换
git config --global core.autocrlf input

# 提交检出均不转换
git config --global core.autocrlf false

SafeCRLF
# 拒绝提交包含混合换行符的文件
git config --global core.safecrlf true

# 允许提交包含混合换行符的文件
git config --global core.safecrlf false

# 提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn

生成Key, ssh-keygen -t rsa -C "your@email.com",

配置.gitconfig,

git config --global user.name "username"
git config --global user.email your@email.com

将本地生成的Key, 上传到远程服务器, 实现免密码登录, ssh-copy-id -p 6666 -i user@127.0.0.1

如果ssh的端口是22, 那么就需要指定-p, -p后跟着的是ssh修改的端口, user@127.0.0.1是远程服务器的用户名IP.

配置完成后, 可以点击SFTP host后的Test SFTP connection...测试连接是否成功, 如果显示Successfully, 成功.

配置映射

在连接配置完成后, 还有一步重要的工作, 配置Mappings

点击当前窗口的顶部的Mappings标签,

Local path是远程开发的项目的根目录

Deployment path on server 'VirtualBox'是相对于Root path路径的, 存放当前项目的根目录下的所有文件, 默认是/, 可以在Root path路径中新建一个目录, 分别存放不同的项目.

Web path on server 'VirtualBox'不需要配置, 默认是/

例如:

Local path:                                 C:\Users\user\Desktop\project
Deployment path on server 'VirtualBox':     /project
Web path on server 'VirtualBox':            /

同步文件

配置好全部信息后, 需要执行文件, 将本地项目的所有文件和修改, 上传到远程服务器.

Tools-->Deployment,

Upload to VirtualBox: 如果当前选中的是一个文件, 那么上传这个文件到远程服务器. 如果选中的是根目录, 那么将整个项目上传到远程服务器.
Upload to: 如果有多个远程配置, 那么这个可以选择上传到具体的远程服务器.

Download from VirtualBox: 如果本地选择的是一个文件, 那么就会从远程复制文件到本地, 会询问是否覆盖本地文件(无论文件是否修改). 如果本地选择的是目录, 那么会一个文件一个文件的询问是否覆盖.
Download from : 选择远程服务器.

Compare with Deployed Version on VirtualBox: 对选中的文件和远程服务器进行比较.
Compare with Deployed Version on : 选择远程服务器..

Sync with Deployed on VirtualBox: 与远程服务器同步
Sync with Deployed on : 选择远程服务器.

posted @ 2019-06-22 10:59  zzhaoleiの博客  阅读(2816)  评论(3编辑  收藏  举报