我们在进行python开发的时候一般将代码托管在GitHub上,在本地进行编辑,然后遇到较大的处理任务需要在服务器上运行。这样代码-》编辑-》运行分别在三个端进行,那么应该如何流畅地在PyCharm使用这三个终端协同工作呢?

使用Github进行代码托管

启用Git:在使用PyCharm新建一个Python项目后点击最上面选项栏的VCS-> Enable Version Control Integration,在弹出的对话框中选择Git作为版本控制系统,这样就启动了Git。启用Git后没有添加到版本管理的文件会显示为红色,commit提交到本地仓库但未push到远端仓库的代码会显示绿色,如果你不希望使用git,在IDEA的Settings->Version Control中删除项目路径。

设置仓库:再次点击 VCS -> Git -> Remotes,在弹出的Git Remotes对话框点击右侧的 + 号,在弹出的Define Remote选项卡填写git仓库的URL地址并为你的仓库起个名字DemoRepo,点击OK完成。

如何执行github下载的python项目 github的python项目运行_选项卡

拉取仓库:点击 VCS -> Git -> Fetch拉取仓库的代码和相关信息

选取分支:有时多人协作,我们不能直接编辑master分支,在这时需要将分支切换到自己的分支进行代码编辑。点击VCS -> Git -> Branches,弹出Git Branches选项卡,可以看到现在我们的分支Local Branches是主分支master,点击Remote Branches下的DemoRepo/tory -> Checkout 将其切换到我的分支tory,这时在左侧可以看到文件的目录结构。

如何执行github下载的python项目 github的python项目运行_git_02

拉取代码:有时候远程的代码发生变化,我们需要拉取仓库最新的代码,点击VCS -> Git -> Pull,弹出如下界面,Git Root可以选择代码拉取到本地哪个位置,Remote为仓库,如果之前添加了多个仓库在这里可以切换,点击Pull,完成拉取。

如何执行github下载的python项目 github的python项目运行_git_03

提交代码:当我们编辑了代码之后需要将代码提交到Github仓库。首先点击VCS -> Commit将代码的改动提交到到本地Git仓库,如果是第一次提交时会提示定义用户名和邮箱,设置完后点击Set and Commit,这样代码就被提交到了本地的仓库。

如何执行github下载的python项目 github的python项目运行_python_04

如果希望将代码提交到远程的仓库,点击VCS -> git -> Push,弹出Push Commit对话框显示将要同步的改动文件,点击Push即可将本地仓库的内容同步到远程仓库

如何执行github下载的python项目 github的python项目运行_选项卡_05

回滚操作:如果我们希望退回到之前的某个状态,可以在下面Git的状态栏找到Log选项卡看见项目的分支树,右击其中的某个状态,比如这里选择“add test",然后点击Reset Current Branch to Here进行回滚,接着会弹出回滚方式选项卡,我选择不保存的方式Hard,点击Reset完成回滚。

如何执行github下载的python项目 github的python项目运行_PyCharm_06

如何执行github下载的python项目 github的python项目运行_选项卡_07

使用服务器运行python项目

配置python编译器

有时候我们的代码需要用服务器来跑代码,这时如何连接到服务器呢?

首先配置python编译器为服务器上的:在PyCharm的设置中找到Python Interpreter,点击右边的⚙按钮弹出 Add Python Interpreter选项卡,选择SSH Interpreter ->Existing serverconfiguration,点击右侧的省略号添加SSH

如何执行github下载的python项目 github的python项目运行_git_08

弹出如下选项卡,在其中输入服务器的主机地址Host,以及登录的用户名Username和密码password

如何执行github下载的python项目 github的python项目运行_python_09

点击Next后需要配置python解释器的位置,如下所示在Interpreter中填写服务器上安装的Anaconda环境中python的位置并且在Sync folder选择代码自动同步到服务器的哪个位置。下面有一个Automatically upload project files的选项打了勾代表当本地项目代码发生改变时会自动上传更新服务器对应的文件,也可以不勾选之后手动上传文件。

如何执行github下载的python项目 github的python项目运行_选项卡_10

完成后在PyCharm的右侧的Remote Host侧栏中弹出服务器的文件列表,默认显示根目录。并且会根据刚才设置的Sync folders将本项目代码上传到服务器对应的位置。可以看到PyCharm界面的右下角显示使用的编译器为远程服务器的python3.6。这时在本地的python项目上点击运行,就会使用远程的编译器运行服务器端对应的文件。

如何执行github下载的python项目 github的python项目运行_PyCharm_11

如何执行github下载的python项目 github的python项目运行_选项卡_12

配置文件映射

在上面配置编译器时自动完成了文件的映射,如果我们只需要连接到远程的服务器获取文件列表,或者希望更改文件映射该怎么办呢?

点击Remote Host侧栏中的省略号图标设置远程服务器。可以看到Deployment选项卡中存在刚才自动生成的Lab GPU连接,其中Root path为连接到服务器的哪个位置,默认为根目录,我们可以将其修改到我们的工作目录作为此连接的根目录

如何执行github下载的python项目 github的python项目运行_PyCharm_13

接着配置文件映射,切换到Mappings选项卡,其中Local path为你项目的本地文件夹,Deployment为远程服务器对应的文件夹,其起始位置是相对于刚才配置连接的Root path开始的。

如何执行github下载的python项目 github的python项目运行_python_14

添加了文件映射之后就可在本地文件和服务器文件建立一一对应关系,右键本地文件,选择Deployment -> Upload to 可以把本地文件上传到服务器映射的位置。反过来,右键服务器上的某个文件选择Download也可将其下载到本地对应的文件夹。

如何执行github下载的python项目 github的python项目运行_git_15

如何执行github下载的python项目 github的python项目运行_git_16

至此服务器的配置就完成了,比较优雅的操作是在本地进行代码编辑,完成后按快捷键Ctrl+Shift+Alt+X将文件上传到服务器,然后点击Ctrl+Enter运行代码。要注意本地修改了代码之后要及时更新到服务器端,否则服务器端会运行旧版本的代码。。