Customize upload and download
Besides the mandatory settings that ensure successful upload and download in various project – server setups, you can configure additional options to customize the interaction with the server. Most of these options apply to all server access configuration types. For FTP, FTPS, and SFTP server configurations, you can specify additional protocol-specific options.
Set common upload and download options
Press Ctrl+Alt+S to open the IDE settings and select Build, Execution, Deployment | Deployment | Options.
Alternatively, from the main menu, select
.Specify additional settings:
To skip specific files or entire folders during upload and download, in the Exclude items by name field, specify the patterns that define the names of these files and folders.
Use semicolons
;
as delimiters, asterisks*
to match zero or more characters, and question marks?
to match a single character.For example, if you have a folder stylesheets with three files style.css, style1.css, and style2.scss, then
style*
excludes the entire folder,style?.css
excludes style.css, andstyle?.*
excludes style1.css and style2.scss.Learn more from Regular-Expressions.info.
The exclusion is applied recursively. This means that if a matching folder has subfolders, the contents of these subfolders are not deployed either.
For more information, see Exclude files and folders from uploading and downloading.
Specify the details of the upload and download procedure by selecting or clearing the corresponding checkboxes.
Specify additional protocol-specific customization options
Press Ctrl+Alt+S to open the IDE settings and select Build, Execution, Deployment | Deployment.
Alternatively, from the main menu, select
.Select a configured server and expand the Advanced group on the Connection tab to specify additional uploading settings that depend on the protocol:
Select the Use rsync for download/upload checkbox to have GoLand use Rsync for uploading and downloading files, which can increase file transfer speeds.
Make sure that the paths to the
rsync
andssh
executables are provided on the page of the Settings/Preferences dialog (Ctrl+Alt+S).On macOS and Linux, the tools are preinstalled and the paths are filled automatically.
On Windows, you need to manually install Cygwin with the
rsync
andopenssh
packages first. The tools' executables are commonly located in the <Cygwin installation>\bin folder.
In the Number of connections field, specify the maximum number of connections to be supported simultaneously.
In the Send keep alive messages each field, specify how often you want GoLand to send commands to the server to reset the timeout and thus preserve the connection.
In the Encoding for client-server communication field, specify the encoding that matches the encoding used by your server. Accept the default value if you are not sure that it supports UTF-8 encoding.
To set the client to the passive mode, select the Passive mode checkbox. In this mode, the client on your machine connects to the server to inform about being in the passive mode, receives the port number to listen to, and established data connection through the port with the received number. This mode is helpful when your machine is behind a firewall.
To have the hidden files and directories (with names starting with a dot .) shown in the Server Browser Tool Window, select Show and process hidden files.
Select Compatible with old version of listing children in the Use LIST command area to ensure compatibility in child file naming with your FTP server.
This option is helpful if the remote FTP server reports the following error:
Invalid descendant file name <file name>Selecting this option may slow down synchronization with the server.
Select Instead of MLSD in the Use LIST command area to use the standard
LIST
command for listing instead of theMLSD
command. This lets you avoid problems, for example, failure during upload with the Invalid descendent file name exception if the FTP server supportsMLSD
and returnscdir
.In the Number of connections field, specify the maximum number of connections to be supported simultaneously.
In the Send keep alive messages each field, specify how often you want GoLand to send commands to the server to reset the timeout and thus preserve the connection.
From the Keep alive command list, choose the commands to be sent to the server to reset the timeout and thus preserve the connection.
TLS: the method of Transfer Layer Security. Select Explicit to use the same port as Plain (unsecured) mode or Implicit to use a dedicated port.
Data channel protection level: select Clear for non-secured connection or Private for secured connection.
Reuse SSL session: select to reuse the security contract, including key and algorithm agreement information, established during SSL connection.
Disable TLS 1.3: select to disable TLS 1.3 features and have GoLand fall back to connecting via TLS 1.2. Use this option if you experience issues with establishing a connection to a server or uploading certain files.
To set the client to the passive mode, select the Passive mode checkbox. In this mode, the client on your machine connects to the server to inform about being in the passive mode, receives the port number to listen to, and established data connection through the port with the received number. This mode is helpful when your machine is behind a firewall.
To have the hidden files and directories (with names starting with a dot .) shown in the Server Browser Tool Window, select Show and process hidden files.
Select Compatible with old version of listing children in the Use LIST command area to ensure compatibility in child file naming with your FTP server.
This option is helpful if the remote FTP server reports the following error:
Invalid descendant file name <file name>Selecting this option may slow down synchronization with the server.
Select Instead of MLSD in the Use LIST command area to use the standard
LIST
command for listing instead of theMLSD
command. This lets you avoid problems, for example, failure during upload with the Invalid descendent file name exception if the FTP server supportsMLSD
and returnscdir
.