This configuration is simpler than it seems.

Creating a server configuration: specifying its name, type, and visibility

  1. Open the Deployment page:

    • On Mac ⌘, on Windows and Linux File | Settings and click Deployment under Build, Execution, Deployment.

    • Choose Tools | Deployment | Configuration on the main menu. (see image below)

  1. In the left-hand pane, that shows a list of all the existing server configurations, click Add +. The Add Server dialog box opens.

  1. Specify the server configuration name in the Name text box. From the Type drop-down list, choose the server configuration type depending on the protocol you are going to use to exchange the data with the server. For more info about available protocols (FTP, SFTP, FTPS).

  2. Use the Visible only for this project checkbox to configure the visibility of the server access configuration.

  3. Click OK. The Add Server dialog box closes and you return to the Connection tab of the Deployment dialog box.

Mapping local folders to folders on the server and the URL addresses to access them

  1. Switch to the Mappings tab.

  1. In the Local Path text box, specify the full path to the desired folder in the project tree. In the simplest case it is the project root.

  2. In the Deployment Path text box, specify the folder on the server where PyCharm will upload the data from the folder specified in the Local Path text box. Type the path to the folder relative to the server configuration root.

  3. In the Web Path text box, type the path to the folder on the server relative to the server configuration root. Actually, type the relative path you typed in the Deployment Path text box.

How do I configure automatic upload of changed files to the default server

  1. Open the Options dialog:

    • Windows/Linux: File | Settings | Build, Execution, Deployment | Deployment | Options
    • MacOS X: PyCharm | Preferences | Build, Execution, Deployment | Deployment | Options

  1. From the Upload changed files automatically to the default server list, choose:

    • Always, to upload any manually or automatically saved file
    • On explicit save action, to upload only manually saved files
    • Never, to suppress automatic upload

That's it! You are ready to start developing.

I have just collected the most relevant information that is available in the official PyCharm documentation, and I have added some images that might guide the ones that are more visually oriented.

Answer from lmiguelvargasf on Stack Overflow
🌐
JetBrains
jetbrains.com › help › pycharm › remote-development-overview.html
Remote development overview | PyCharm Documentation
October 17, 2025 - ... JetBrains Toolbox App: supports the connection on Linux, macOS, and Windows. For more information, refer to the Toolbox App page. PyCharm: connects to your remote project from the PyCharm welcome screen.
🌐
JetBrains
jetbrains.com › help › pycharm › remote-development-starting-page.html
Connect to a remote server from PyCharm | PyCharm Documentation
October 28, 2025 - The connection to a remote server is done via SSH and can be started right from the welcome screen of PyCharm. On how to access the welcome screen, refer to Installation guide. Ensure you have the Remote Development Gateway plugin enabled.
Discussions

PyCharm: Remote Development - Stack Overflow
How can I connect PyCharm to a remote server in order to do remote development? All the files (code and data) are on a remote server. The development (adding/editing files) will happen at the remote More on stackoverflow.com
🌐 stackoverflow.com
Is there an equivalent of the VS Code remote development in PyCharm?
I have exactly the same question: I have a linux machine with my python code (~/documents/my_web_app) and on the same machine there's the python environment and other resources (Kibana, Elasticsearch). I would like to do remote development from my windows machine through SSH and forward some ports (5000 and 5601). I am new to remote development from PyCharm, from what i could understand it sets-up an SSH connection for the code, and another SSH connection for the python environment and the port forwarding. the problem is that it uploads the whole repo again to the machine to the sync folder when i ask to run tests or debug the code which is unnecessary since the code is already there. I'm looking for something like VSCode offers: https://code.visualstudio.com/docs/remote/ssh More on reddit.com
🌐 r/pycharm
10
7
June 18, 2024
issues whilst setting up remote development in pycharm professional
You don’t need the Pycharm IDE on the remote. Just use SSH to remote. Install the pyvenv on remote and point Pycharm to that. I typically use Linux for remote so maybe I don’t understand what exactly you are doing. More on reddit.com
🌐 r/pycharm
7
2
November 24, 2022
python - Opening remote project in PyCharm - Stack Overflow
I'm working on a project that is located in a remote server. Can I open it in PyCharm from my local machine ? I couldn't find the way. More on stackoverflow.com
🌐 stackoverflow.com
🌐
JetBrains
jetbrains.com › help › pycharm › faq-about-remote-development.html
FAQ about remote development | PyCharm Documentation
March 27, 2026 - Remote Development is a new functionality in PyCharm that enables you to connect to a remote server with the IDE backend running there from anywhere in the world, and work on a project located on that server as seamlessly as if it was located ...
🌐
JetBrains
jetbrains.com › help › pycharm › remote.html
Remote development | PyCharm Documentation
Need help? Here is the complete coverage for all JetBrains products, languages, and tools.
🌐
JetBrains
jetbrains.com › help › pycharm › remote-development-a.html
Connect and work with JetBrains Gateway | PyCharm Documentation
January 23, 2026 - Gitpod is available in JetBrains Gateway as a plugin that you can use to connect to the existing Gitpod workspaces or create a new one and work with it in PyCharm. Launch JetBrains Gateway. Select Remote Development from the options on the left.
Top answer
1 of 4
26

This configuration is simpler than it seems.

Creating a server configuration: specifying its name, type, and visibility

  1. Open the Deployment page:

    • On Mac ⌘, on Windows and Linux File | Settings and click Deployment under Build, Execution, Deployment.

    • Choose Tools | Deployment | Configuration on the main menu. (see image below)

  1. In the left-hand pane, that shows a list of all the existing server configurations, click Add +. The Add Server dialog box opens.

  1. Specify the server configuration name in the Name text box. From the Type drop-down list, choose the server configuration type depending on the protocol you are going to use to exchange the data with the server. For more info about available protocols (FTP, SFTP, FTPS).

  2. Use the Visible only for this project checkbox to configure the visibility of the server access configuration.

  3. Click OK. The Add Server dialog box closes and you return to the Connection tab of the Deployment dialog box.

Mapping local folders to folders on the server and the URL addresses to access them

  1. Switch to the Mappings tab.

  1. In the Local Path text box, specify the full path to the desired folder in the project tree. In the simplest case it is the project root.

  2. In the Deployment Path text box, specify the folder on the server where PyCharm will upload the data from the folder specified in the Local Path text box. Type the path to the folder relative to the server configuration root.

  3. In the Web Path text box, type the path to the folder on the server relative to the server configuration root. Actually, type the relative path you typed in the Deployment Path text box.

How do I configure automatic upload of changed files to the default server

  1. Open the Options dialog:

    • Windows/Linux: File | Settings | Build, Execution, Deployment | Deployment | Options
    • MacOS X: PyCharm | Preferences | Build, Execution, Deployment | Deployment | Options

  1. From the Upload changed files automatically to the default server list, choose:

    • Always, to upload any manually or automatically saved file
    • On explicit save action, to upload only manually saved files
    • Never, to suppress automatic upload

That's it! You are ready to start developing.

I have just collected the most relevant information that is available in the official PyCharm documentation, and I have added some images that might guide the ones that are more visually oriented.

2 of 4
9

This is how I do remote development using PyCharm:

  1. Have a copy of the codebase on local machine
  2. Go to pycharm -> tools -> Deplyoment and configure your remote destination.
  3. If you select Automatic Upload then as soon as you save any file on local machine, it will get uploaded to the remote, thereby giving you an impression of working on the remote. However, based on my experience, you should not select Automatic Upload specially if you like to save every now and then. For such cases, upload manually by right clicking the file and selecting Upload to remote once you are ready to run/test.
  4. In the terminal below, ssh to remote and run commands there.
Find elsewhere
🌐
JetBrains
jetbrains.com › help › pycharm › work-inside-remote-project.html
Work inside remote project | PyCharm Documentation
February 6, 2026 - A remote project gets opened in JetBrains Client as it would be opened in your local PyCharm IDE. You can develop it like any other local project: edit code, run applications, debug, and deploy.
🌐
Genmind
genmind.ch › posts › Code-from-Anywhere-Your-SSH-Guide-to-Remote-Development-in-PyCharm
Code from Anywhere: Your SSH Guide to Remote Development in PyCharm | Gian Paolo Santopaolo
January 8, 2026 - To download the model, or any other file, you created on the remote GPU machine Open the Remote Host window: Tools → Deployment → Browse Remote Host Locate the file or folder you modified on the server. Right‑click → Download from Here to pull it back into your local project. License SSH interpreters require PyCharm Professional (Community Edition doesn’t support them).
🌐
JetBrains
jetbrains.com › help › pycharm › start-dev-container-for-a-remote-project.html
Start Dev Container for a remote project | PyCharm Documentation
February 5, 2026 - Launch PyCharm. On the left-hand pane of the Welcome screen, click Remote Development.
🌐
JetBrains
jetbrains.com › help › pycharm › creating-a-remote-server-configuration.html
Create a remote server configuration | PyCharm Documentation
August 1, 2025 - Root path: specify the folder used as the remote directory root for browsing the remote file system and setting the server path mappings and excluded paths. ... Accept the default / path, which points at the root folder on the server. Type the path manually or click and select the desired folder in the Choose Root Path dialog that opens. Click Autodetect. PyCharm detects the user home folder settings on the FTP/SFTP server and sets up the root path according to them.
🌐
JetBrains
intellij-support.jetbrains.com › hc › en-us › community › posts › 24901180904338-Setup-remote-development-with-PyCharm
Setup remote development with PyCharm – IDEs Support (IntelliJ Platform) | JetBrains
February 25, 2025 - Please use the Installation Options button at the Choose IDE and Project step. Here are some additional links that you may find helpful: https://www.jetbrains.com/help/idea/remote-development-troubleshooting.html https://www.jetbrains.com/help/idea/fully-offline-mode.html
🌐
Surf
servicedesk.surf.nl › wiki › spaces › WIKI › pages › 30668881 › PyCharm+and+other+JetBrains+IDEs+for+remote+development
PyCharm and other JetBrains IDEs for remote development - SURF User Knowledge Base - SURF User Knowledge Base
PyCharm is a popular IDE for the Python programming language, and is developed by Jetbrains. Remote development means running the back-end of a development environment on a remote device other than the user's personal device.
🌐
JetBrains
blog.jetbrains.com › pycharm › 2015 › 03 › feature-spotlight-python-remote-development-with-pycharm
Feature Spotlight: Python remote development with PyCharm | The PyCharm Blog
October 15, 2025 - PyCharm takes care of uploading any changes to the remote machine and keeps the VM up and running. With the same Run/Debug configuration, we can do a simple remote debug session putting a few breakpoints right in the editor: ... That’s it! Hopefully you’ll appreciate this remote development functionality in PyCharm that makes Python remote development a breeze.
🌐
Reddit
reddit.com › r/pycharm › issues whilst setting up remote development in pycharm professional
r/pycharm on Reddit: issues whilst setting up remote development in pycharm professional
November 24, 2022 -

Was so excited to explore the "remote development" feature on pycharm, since i don't have enough computing resources to run in my local.
Spent entire day trying to set it up in multiple remote machines, but all of them failed.

Approach 1 - let local IDE download remote IDE of the same version, failed with logs , when i click on Download and start IDE option

Approach 2 - installed the tar.gz IDE of same version on remote, extracted it, and then ran remote-dev-server.sh registerBackendLocationForGateway resulted in the following o/p.

'/home/<user>/.cache/JetBrains/RemoteDev/userProvidedDist/_scratch_<user>_pycharm_2022.2.4' -> '/scratch/<user>/pycharm-2022.2.4'

after which followed approach 1, it had detected the IDE that i had installed on remote, failed again with logs, when i clicked on Open and start IDE

how can i debug this, what else can i look into ?

🌐
SSHFriendly
sshfriendly.com › home › pycharm ssh: your guide to remote development
PyCharm SSH: Your Guide to Remote Development
August 28, 2025 - PyCharm, a powerful Integrated Development Environment (IDE) for Python, offers robust support for remote development via SSH.
🌐
JetBrains
jetbrains.com › help › pycharm › remote-development-troubleshooting.html
Troubleshooting | PyCharm Documentation
December 5, 2024 - To collect logs from the backend IDE, JetBrains Gateway or the IDE must be connected to a remote server.
🌐
JetBrains
jetbrains.com › help › pycharm › prerequisites.html
System requirements for remote development | PyCharm Documentation
February 5, 2026 - Systems that don’t meet the requirements may work with Remote Development, yet we will not be able to support issues that might arise along the way. Depending on the size of your project, ensure that the system to which you are connecting meets the following requirements: For a complete list of system requirements, refer to Install PyCharm...
Top answer
1 of 5
35

The way I access the projects on my raspberry pi using PyCharm is the following (This expects you to be using PyCharm Pro, supporting SSH connections):

  1. Mount the home folder on my local machine ( I use SFTP Drive on windows, under Linux use sshfs).
  2. Open the project from the mounted drive in PyCharm
  3. Go to Settings -> Project -> Project Interpreter and select the gear next to the Project Interpreter drop down. From there pick "Add Remote".
  4. Configure the remote interpreter you want to use.

If the PyCharm project was already created on the server, I guess your run configuration should be in order and running it should work out of the box.

If you created the PyCharm project on your local machine:

  • If you have no run configuration yet, go to the file you want to run and do right-click -> Run yourfilename.py or simply hit Shift-F10
  • The remote interpreter will complain about non existent files. Go to the dropdown in the top right corner, click it and select 'Edit Configurations'
  • Change the script path and working directory to the actual remote directories. Remember, this is what your interpreter sees, and your interpreter is on your remote machine.

Hope this helps!

2 of 5
5
  • The following will configure PyCharm Professional 2021.3.1 on Windows 10 to run a project on a remote Linux server. It's likely the configuration will be similar for PyCharm on macOS.
  1. Open PyCharm
  2. Create a New Project and select Pure Python
  3. Fill the Location and Remote project location, which may be new or existing.
  4. Select the ellipsis next to Interpreter under Previously configured interpreter
  5. Select SSH Interpreter and create New server connection
    • Supply your credentials
    • The default Interpreter will be /usr/bin/python, but an alternate location may be provided, for example /home/.../anaconda3/bin/python3.9
  6. Create the project
  7. Press Ctrl + Alt + S to open Settings
    1. Select Deployment under Build, Execution, Deployment
      • Check Connection and Test Connection
      • Check Mappings to verify Local path and Deployment path
    2. Select Python Interpreter under Project:...
      • Verify the remote interpreter is selected for the project.
        • As long as this is the case, the code will run relative to the remote system.
    3. Close Settings with OK, or Apply
  8. Use PUTTY or some other app to verify the project now exists on the remote system
  9. Right click the project and select Deployment for deployment options

Note

  • This will likely require being connected to the corporate network through a VPN.
🌐
JetBrains
intellij-support.jetbrains.com › hc › en-us › community › posts › 15304934811538-PyCharm-Remote-Development-on-a-Remote-Server-Is-it-okay-to-have-local-path-and-deployement-path-the-same
PyCharm Remote Development on a "Remote" Server - Is it okay to have local path and deployement path the same? – IDEs Support (IntelliJ Platform) | JetBrains
November 24, 2023 - As explained here, files in deployment path (tmp in my case) are only read only, and if you want to make a change you either “synch” or update the local file instead. However I sometimes want to directly use my desktop at home and sometimes remotely code while away with my laptop.