使用PyCharm在Github上保存代码并在服务器上运行方式

 更新时间:2024年02月27日 09:18:56   作者:Vic·Tory  
这篇文章主要介绍了使用PyCharm在Github上保存代码并在服务器上运行方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

我们在进行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完成。

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

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

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

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

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

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

使用服务器运行python项目

配置python编译器

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

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

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

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

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

配置文件映射

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

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

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

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

至此服务器的配置就完成了,比较优雅的操作是在本地进行代码编辑,完成后按快捷键Ctrl+Shift+Alt+X将文件上传到服务器,然后点击Ctrl+Enter运行代码。

要注意本地修改了代码之后要及时更新到服务器端,否则服务器端会运行旧版本的代码。。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python实现的二叉树算法和kmp算法实例

    python实现的二叉树算法和kmp算法实例

    最近重温数据结构,又用python,所以就用python重新写了数据结构的一些东西,以下是二叉树的python写法
    2014-04-04
  • python通过正则查找微博@(at)用户的方法

    python通过正则查找微博@(at)用户的方法

    这篇文章主要介绍了python通过正则查找微博@(at)用户的方法,涉及Python正则匹配的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • pyqt5 使用label控件实时显示时间的实例

    pyqt5 使用label控件实时显示时间的实例

    今天小编就为大家分享一篇pyqt5 使用label控件实时显示时间的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 解决django中ModelForm多表单组合的问题

    解决django中ModelForm多表单组合的问题

    今天小编就为大家分享一篇解决django中ModelForm多表单组合的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • python 巧用正则寻找字符串中的特定字符的位置方法

    python 巧用正则寻找字符串中的特定字符的位置方法

    下面小编就为大家分享一篇python 巧用正则寻找字符串中的特定字符的位置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • 深度Q网络DQN(Deep Q-Network)强化学习的原理与实战

    深度Q网络DQN(Deep Q-Network)强化学习的原理与实战

    深度Q学习将深度神经网络与强化学习相结合,解决了传统Q学习在高维状态空间下的局限性,通过经验回放和目标网络等技术,DQN能够在复杂环境中学习有效的策略,本文通过CartPole环境的完整实现,展示了DQN的核心思想和实现细节
    2025-04-04
  • Python搭建监控平台的实现示例

    Python搭建监控平台的实现示例

    本文主要介绍了Python搭建监控平台的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 利用 Python 实现随机相对强弱指数 StochRSI

    利用 Python 实现随机相对强弱指数 StochRSI

    随机相对强弱指数简称为StochRSI,是一种技术分析指标,用于确定资产是否处于超买或超卖状态,也用于确定当前市场的态势。本篇文章小编九来为大家介绍随机相对强弱指数简称为StochRSI,需要的朋友可以参考下面文章的具体内容
    2021-09-09
  • 小结Python的反射机制

    小结Python的反射机制

    这篇文章主要介绍了Python的反射机制,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-09-09
  • Python深度学习之Keras模型转换成ONNX模型流程详解

    Python深度学习之Keras模型转换成ONNX模型流程详解

    这篇文章主要介绍了Python深度学习之Keras模型转换成ONNX模型流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-09-09

最新评论