Deployment menu items grayed out

Hello. I recently set up deployment information in PyCharm. I tested the connection to the deployment server and it connects successfully. After uploading the files to the server the menu option to deploy goes gray (it's under Tools –> Deployment –> Upload to <server>). I'm assuming this is not intentional, since restarting PyCharm enables the option again.

I've attached a screenshot. Any idea how to get around this problem without restarting PyCharm every time I want to upload?
Deployment grayed out.png
Did you define the mappings between the local and server paths in the "Mappings" tab of Settings | Deployment?
i had same issue, fixed now, did not specify mapping .. you guys should make / default
That would be a very bad default. You never need to replace the entire contents of the filesystem on a remote machine with the contents of your project.
how would that happen? seem strange .. what i am saying is if i want to upload my files, they should be default go to the base of the directory where I setup the ftp account ..

for example, if I setup my ftp account to point to the root like /user/html/ then it should go there .. if i setup my ftp account so that it is /user/html/some site/ then it would go there .. of course i can also add more directories like /user/html/some site/images/, for example well, but as a default, it should just go to the base directory unless otherwise specified ... i dont see how uploading some files would wipe out the filesystem .. anyway, i understand you want people to specify, but then it is one extra step we have to do before being able to get going ..

if the ftp account is setup to go to a "root" directory, and i do not specify any particular directory to send to, then it should go there .. simply uploading files should not delete anything
you are right it is a good idea to force the user to take the extra step in case they are not sure about their ftp account, for those who know what they are doing, it is an extra step ... best software always reduces steps :) its a trade off

I share the same problem as Dylan.

I have configured the remote host.

I can browse the files on the remote host.

I have configured the mappings of the deployment, identical to the dev machine.

Still cannot upload, download or sync.

Something is missing but I can't figure out what. (Pycharm 2017.1.2 professional)


I had this problem on IntelliJ IDEA 2017.1.5 using SFTP. I checked all of my settings and was certain that they were correct. The solution I found was to enable Automatic Upload and then trigger it by updating and saving a file. After the first automatic upload was completed, all of the disabled Deployment menu items are now enabled.


I know this thread is old, just posting here for anyone else looking for a resolution.

I ran into this problem and determined that this was all down to not specifying a "default" server in the Deployment settings.

So to enable the menu options we're all looking for here:

File > Settings > Deployment  -OR- Tools > Deployment > Configuration

Select server from the list  > Right Click > Use as Default (or click the server/checkmark icon) > OK

The options should now be enabled. Yay!


Thanks, Damon, for your thoughtfulness -- it's nice when folks share things online for the benefit of others.  Unfortunately, your solution didn't work for me.  The server was already set as the default, so I tried unselecting it as default, and reselecting.  No dice either way.  In a way, it's almost better that that didn't work, because why on earth should it matter whether a server configuration is the default or not.

C'mon, JetBrains, what's the deal?  Why do you make this so confoundedly difficult?  My test connection succeeds.  I have set up a mapping from the source code on the remote system to a fixed directory on my local system.  I can successfully navigate the directories on the remote from your browse dialogs on my local system.  I've checked file/directory access permissions and ownerships carefully.  I've tried creating multiple mapping directories to see if any of them work.  I can Run or Debug the remote app successfully using the deployment configuration.  I can enable the checkbox to "auto-upload" and then when I create some random file in the local directory, voila! it's magically uploaded to the correct directory on the remote.  The connections between the systems are fine -- yet, no matter what I try, all the download and upload options "above the bar" (above Configure) remain greyed out!  Even the upload options are greyed out when "auto-upload" clearly works (and irrespective of the state of that checkbox).

I just loathe the use of "greyed out" menu options in GUI design for this exact reason.  You have an app here that institutes some magic set of preconditions that need to be satisfied for these options to be ungreyed, but heaven only knows what those criteria night be, and it's not stated or documented explicitly anywhere what they are, but apparently my configuration isn't satisfying them, and I don't know how to make it.  Instead, you leave your users dangling, reliant on tribal lore in an online forum to convey to each other what night work, and what works for Person X invariably doesn't for Person Y.  Enough with this!  How about not greying out options, then when a user tries to select that action, you can pop up a dialog box that tells him/her what isn't satisfied for that action to be usable.  Even a tooltip when hovering over a greyed-out menu option indicating why it's greyed would be somewhat better.

All the above grousing aside, this question remains...  How do I upload/download/sync files between a remote host and local directory tree using a Remote Debugging Deployment configuration?

It was asked originally almost six years ago, and there's still no definitive answer.  Version 2018.1.4 (Pro), Linux (local) <--> Linux (remote).


> How do I upload/download/sync files between a remote host and local directory tree using a Remote Debugging Deployment configuration?


Please attach screenshots of your deployment server configuration, including "Mappings" tab.


As a side note: things have changed since 2012, even now the design is being experimented with, e.g.


Thanks, Dmitry.  I've actually submitted this as a YouTrack item, and will follow through there instead through the forum.


Perfect, thanks for the update.


Had the same issue. My specific problem was trying to map a path unrelated to the project to be synced into the server.

I.e., my project sits at 'C:\project_i_wanna_sync', whereas the Local Path was set to 'D:\somewhere_totally_else'.

So on top of everything said here, that's another thing to look at.


Same problem here! I can upload files but not download. I tried to set the default server but it didn't work.


I too had the same issue. I tried everything above in this page, but nothing solved my problem.

Finally this solved my issue:


I know the reason!!!

The project/directory you opened now is not the project/directory you want to upload to the remote server!

If this is your first time to open Pycharm, then the working directory or the current project in Pycharm is the default directory/project. It is not the project you specified you want to deploy to the server. 

After you open the correct project, this issure is solved. 

I think JetBrains should have warnings like: 'The current project [project name] you are running is not your remote project [project name]'.


i created a test file and uploaded it, then it started working


I am facing the same problem, that the deployment options are greyed out. For now it seems to be fixed by setting "keep alive" messages to a shorter period. Instead of 300 sec i did e.g. 10 sec. As of now it seems to work. 




I had the same problem for a project I was sure was already set up correctly. Turns out, a mapping was incomplete. After fixing the mapping deployment worked as expected.


To add to this thread, for me what happened is I marked a directory as excluded which removed it from indexing, even when I cancelled the exclusion because it stayed as excluded in the deployment. What I had to do is go to Deployment → Excluded paths → and remove the problematic path.

Hope it helps someone!


Please sign in to leave a comment.