【Linux】PyCharm 连接服务器同步文件进行开发

2023-05-16

文章目录

    • 一、原因
    • 二、推荐
    • 三、配置
      • 1. 基本服务器配置
      • 2. python 解释器配置
    • 四、使用
    • 五、参考链接

一、原因

在服务器上开发时直接用 vim 粘贴进去的代码总有问题(各种不开心)。我想与其一直纠结如何解决这个问题,不如干脆放弃解决这个问题,转用它法。所以我想到了熟悉的 Jupyter notebook,但是总觉得不太舒服,各种不方便,计算机视觉和数据分析不同,感觉没有 IDE 那种一个文件解决一个问题的看代码方便(可能就是不熟悉),我更喜欢用 Jupyter notebook 去做一些小测试,确实很方便。我就想能不能用我熟悉的 PyCharm,上网一搜,果然有,然后就有了这篇 blog。

二、推荐

通过 PyCharm 连接服务器进行代码编写和调试,通过 MobaXterm 进行环境配置和可视化的文件上传和下载。真的贼方便。
也可以 PyCharm 全搞定,查看远程目录 tools > deployment > browse remote host | 使用ssh终端 tools->start ssh session。但是感觉没有分开明确。

三、配置

1. 基本服务器配置

打开 PyCharm,新建一个项目(建议和服务器上的文件夹同名,怕忘),tools -> Deployment -> Configuration,如下图所示。
在这里插入图片描述
然后就可以开始配置之旅了。
点击 + 号新键,名字随便,Type 选 SFTP。
在这里插入图片描述
然后开始填服务器信息,框里的是必备信息,都需要填。
特别说明:Root path 是需要同步的服务器的路径。
在这里插入图片描述
Mapping 只需要做一件事,即注意 Use this server as default 一定要选,否则不能同步。Local path 对应从服务器下载下来文件在本地的保存路径,就是这次新键的项目的位置,Deployment path 是 Root path 的再缩小同步的范围,不选择则同步的路径即是 Root path。

在这里插入图片描述

Excluded Paths,顾名思义,刨除的路径,即你不想要下载到本地的文件或文件夹的位置。比如说数据或者模型,动不动 1G+,等等。

2. python 解释器配置

然后是 服务器 python 环境的配置。
File->Settings->Project: xxx->Project Interpreter 点击最右边的设置图标,ADD。
在这里插入图片描述
然后选 SSH Interpreter,再到 Existing server configuration 选择之前配置好的服务器。
在这里插入图片描述
到这里配置就完成了。

四、使用

首先当然是下载代码到本地了,可以选择 download 也可以是 Sync 同步,随便你了。

同步方式到 Tools -> Deloyment -> Options 这里设置。Always,Never和On explicit save action(Ctrl+S) 三种方式,Always是总是自动上传改动,Never是不同步,On explicit save action 是快捷键 ctrl+s 保存便上传改动,我觉得 选 Always 和 On explicit save action 都行。

使用心得:如果之前断开网络,然后重新使用,可能会出现,运行上次编辑的代码,本次的改动没上传的现象,运行之前先 Sync 同步,连接一下服务器,即可解决。

五、参考链接

  1. Pycharm连接远程服务器环境搭建
  2. pycharm连接远程服务器 代码同步 远程调试
  3. Pycharm远程连接服务器(windows下远程修改服务器代码)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Linux】PyCharm 连接服务器同步文件进行开发 的相关文章

  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • Linux中的CONFIG_OF是什么?

    我看到它在很多地方被广泛使用 但不明白在什么场景下我需要使用它 What is 配置 OF OF 的全名是什么 打开固件 这是很久以前发明的 当时苹果公司正在生产基于 PowerPC CPU 的笔记本电脑 而 Sun Microsystem
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 加载数据infile,Windows和Linux的区别

    我有一个需要导入到 MySQL 表的文件 这是我的命令 LOAD DATA LOCAL INFILE C test csv INTO TABLE logs fields terminated by LINES terminated BY n
  • Android 时钟滴答数 [赫兹]

    关于 proc pid stat 中应用程序的总 CPU 使用率 https stackoverflow com questions 16726779 total cpu usage of an application from proc
  • import matplotlib.pyplot 给出 AttributeError: 'NoneType' 对象没有属性 'is_interactive'

    我尝试在 Pycharm 控制台中导入 matplotlib pyplt import matplotlib pyplot as plt 然后作为回报我得到 Traceback most recent call last File D Pr
  • os.Mkdir 和 os.MkdirAll 权限

    我正在尝试在程序开始时创建一个日志文件 我需要检查是否 log如果不创建目录 则目录存在 然后继续创建日志文件 好吧 我尝试使用os Mkdir 也os MkdirAll 但无论我在第二个参数中输入什么值 我都会得到一个没有权限的锁定文件夹
  • Linux:在文件保存时触发 Shell 命令

    我想在修改文件时自动触发 shell 命令 我认为这可以通过注册 inotify 挂钩并调用来在代码中完成system 但是是否有更高级别的 bash 命令可以完成此任务 尝试 inotify 工具 我在复制链接时遇到问题 抱歉 但 Git
  • 如何通过保持目录结构完整来同步路径中匹配模式的文件?

    我想将所有文件从服务器 A 复制到服务器 B 这些文件在不同级别的文件系统层次结构中具有相同的父目录名称 例如 var lib data sub1 sub2 commonname filetobecopied foo var lib dat
  • C语言中如何通过内存地址映射函数名和行号?

    如何用 GCC 中的内存地址映射回函数名称和行号 即假设一个 C 语言原型 void func Get the address of caller maybe this could be avoided MemoryAddress get
  • 为什么我可以直接从 bash 执行 JAR?

    我是一个长期从事 Java 工作的人 并且知道运行带有主类的 JAR 的方法MANIFEST MFJar 中的文件很简单 java jar theJar jar 我用它来启动 Fabric3 服务器 包含在bin server jar在其标
  • 为arm构建WebRTC

    我想为我的带有arm926ej s处理器的小机器构建webrtc 安装 depot tools 后 我执行了以下步骤 gclient config http webrtc googlecode com svn trunk gclient s
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • docker容器大小远大于实际大小

    我正在尝试从中构建图像debian latest 构建后 报告的图像虚拟大小来自docker images命令为 1 917 GB 我登录查看尺寸 du sh 大小为 573 MB 我很确定这么大的尺寸通常是不可能的 这里发生了什么 如何获
  • 查找哪些页面不再与写入时复制共享

    假设我在 Linux 中有一个进程 我从中fork 另一个相同的过程 后forking 因为原始进程将开始写入内存 Linux写时复制机制将为进程提供与分叉进程使用的不同的唯一物理内存页 在执行的某个时刻 我如何知道原始进程的哪些页面已被写
  • 如何通过ssh检查ubuntu服务器上是否存在php和apache

    如何通过ssh检查Ubuntu服务器上apache是 否安装了php和mysql 另外如果安装的话在哪个目录 如果安装了其他软件包 例如 lighttpd 那么它在哪里 确定程序是否已安装的另一种方法是使用which命令 它将显示您正在搜索
  • 如何更改 Apache 服务器的根目录? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何更改 Apache 服务器的文档根目录 我基本上想要localhost从 来 users spencer projects目录而不是

随机推荐