A modern and elegantly designed VS Code SFTP extension featuring a sleek, compact dual-panel interface. Experience seamless file transfers, SSH port forwarding, and intelligent remote host management with automatic cross-device synchronization—all in a beautifully streamlined workflow.
✨ A modern and elegantly designed SFTP extension with a sleek, compact dual-panel interface
Experience seamless file transfers, SSH port forwarding, and intelligent remote host management with automatic cross-device synchronization—all in a beautifully streamlined workflow that enhances your productivity.
If you find this extension helpful, consider buying me a coffee!
- Direct Remote File Editing: Edit remote files directly in VS Code
- Dual-Panel File Browser: Visual interface with side-by-side local and remote file views
- Breadcrumb Navigation: Clickable path segments for quick directory navigation
- Left-click any path segment to jump to that directory
- Right-click any path segment to open the path context dropdown
- Intelligent overflow handling - shows trailing paths first
- Supports Windows (C:) and Unix (/) path formats, including the Windows drives view
- File Permissions: Display and edit Unix-style permissions for remote files
- Permission column shows rwx format (e.g.,
rwxr-xr-x) - Right-click context menu to change permissions
- Supports octal (755) and symbolic (rwxr-xr-x) input formats
- Permission column shows rwx format (e.g.,
- Keyboard Shortcuts:
- Ctrl+A (Cmd+A on Mac): Select all visible items in current panel
- Real-time search/filter files
- Quick upload/download with click buttons
- Panel or Editor area display modes
- Support multiple browser instances (Editor mode)
- Breadcrumb Navigation: Clickable path segments for quick directory navigation
- Quick Upload/Download: Upload or download files directly from Explorer or Editor
- Path Bookmarks: Save and quickly access frequently used remote directories
- Click remote path area to toggle bookmark dropdown
- Add bookmarks from context menu (files, folders, or empty area)
- Quick navigation to saved remote directories
- TreeView Interface: Organize hosts with groups and color coding
- SSH Config Import: Import existing configurations from ~/.ssh/config
- Import/Export: Backup or share host configurations via JSON files
- Cross-Device Sync: Host configurations automatically sync via VS Code Settings Sync
- Multiple Methods: Password, Private Key, or SSH Agent
- Secure Storage: Credentials stored locally (never synced)
- Passwordless Setup: Auto-configure SSH key-based authentication
- Windows SSH Agent: Native support via named pipes
- Transfer Queue: Visual task management with real-time progress
- Pause, resume, or cancel transfers
- Auto-retry failed transfers
- Transfer history with statistics
- Priority-based queue (small files first)
- Advanced Features:
- File Comparison: Compare any two files via context menu
- Parallel chunk transfer for large files (100MB+)
- File integrity verification (MD5/SHA256)
- Preserve file permissions and timestamps
- Smart host selection (recently used first)
- SSH Connection Pool: 5-10x faster with automatic connection reuse
- Parallel Transfers: Up to 5 concurrent file transfers
- Large File Optimization: Automatic chunked transfer for files over 100MB
- Port Forwarding Management: Manage SSH port forwardings with auto-refresh and duplicate prevention
- Click port numbers or forwarding addresses to open in browser
- Automatic table refresh when forwarding status changes
- Smart duplicate prevention to avoid redundant records
- Configure to use internal (Simple Browser) or external browser
- Open the Simple SFTP panel in the Activity Bar
- Click the "+" icon in the toolbar
- Follow the prompts to enter:
- Host name (display name)
- Hostname or IP address
- Port (default: 22)
- Username
- Default remote path
- Optional: Group and color
- Click the cloud download icon in the toolbar
- Select hosts to import from your ~/.ssh/config
- Choose a group or create a new one
- Imported hosts will appear in the TreeView
Export your host configurations to a JSON file for backup or sharing:
- Export All Hosts: Click the export icon in the toolbar or use Command Palette → "Simple SFTP: Export All Hosts"
- Export Group: Right-click a group → "Export Group"
- Export Single Host: Right-click a host → "Export Host"
The exported JSON file contains:
- Host configurations (name, address, port, username, paths, colors, etc.)
- Group information
- Bookmarks and recent paths
- Note: Authentication credentials (passwords, private keys) are not exported for security reasons
Import host configurations from a JSON file:
- Click "Import Hosts" in the toolbar or use Command Palette → "Simple SFTP: Import Hosts"
- Select the JSON file to import
- Review the import preview showing new and duplicate hosts
- Confirm to import
Import Behavior:
- New hosts: Automatically imported
- Duplicate hosts (same
username@host:port): Automatically skipped - Groups: Existing groups are merged; new groups are created
- Authentication: Must be configured separately after import
- Right-click a host in the TreeView
- Select "Configure Authentication"
- Choose authentication method:
- Password
- Private Key (with optional passphrase)
- SSH Agent
- Right-click a host
- Select "Setup Passwordless Login"
- Enter your password when prompted
- The extension will automatically copy your SSH public key to the remote host
- Right-click any file or folder in Explorer or right-click in the editor
- Select "Upload to Remote Host"
- Choose the destination host (recently used hosts appear first)
- Browse and select the remote directory
- Use upload buttons on directory items for quick upload
- Hosts you've recently uploaded to or downloaded from appear at the top
- Easy to reuse the same hosts for common workflows
- Authentication status clearly indicated for each host
- Right-click a host in the TreeView
- Select "Download from Remote Host"
- Browse remote directories with smart path navigation
- Click download buttons on files/directories for quick download
- Toggle dot files visibility as needed
- Choose where to save the downloaded files
- Right-click any file or folder in Explorer
- Select "Download from Remote Host to Here"
- Choose the source host (recently used hosts appear first)
- Browse and select remote files/folders
- Files download directly to the selected local folder
Both methods support:
- Downloading individual files or entire directories
- Smart path navigation with input box
- Recently used hosts for quick access
- Real-time progress tracking
- Right-click a host in the TreeView
- Select "Edit Host"
- Update hostname, port, or other settings
- Right-click a host
- Select "Test Connection"
- View the result in a notification
- VS Code 1.108.0 or higher
- SSH access to remote hosts
- For passwordless setup: SSH key pair (~/.ssh/id_rsa or similar)
The following commands are available in the Command Palette (Ctrl/Cmd+Shift+P):
- Simple SFTP: Add Host - Add a new remote host
- Simple SFTP: Add Group - Create a host group
- Simple SFTP: Import from SSH Config - Import from ~/.ssh/config
- Simple SFTP: Show Output Logs - Open the log viewer
Additional commands are available via context menus in the TreeView and file explorers.
Configure Simple SFTP in VS Code Settings (Ctrl/Cmd+,):
-
simpleSftp.showDotFiles (boolean, default:
true) Show hidden files and directories (dot files) in remote file browser -
simpleSftp.browser.openInEditor (boolean, default:
true) Open file browser in editor area instead of panel. When enabled, supports multiple browser instances for different hosts. -
simpleSftp.browser.panelLayout (enum:
equal|localMaximized|remoteMaximized, default:equal) Default layout mode for the dual panel file browser:equal: Split panels 50/50localMaximized: Local panel maximized (remote hidden)remoteMaximized: Remote panel maximized (local hidden)
-
simpleSftp.ui.defaultIconSize (enum:
96|128|160, default:96) Default file icon size for grid view (pixels):96: Small icons (saves space)128: Medium icons (balanced)160: Large icons (best visibility)
Note: This is the initial size when opening the file browser. You can temporarily change icon size using the Small/Medium/Large buttons in grid view without affecting this setting.
-
simpleSftp.fileView.defaultLayout (enum:
list|grid, default:list) Default file view layout in SFTP file browser:list: Detailed table view with columns (name, modified time, permissions, size)grid: Icon/grid view with image thumbnails (better for visual browsing)
-
simpleSftp.fileView.thumbnailSize (enum:
96|128|160, default:96) Thumbnail size for image files in grid view (pixels):96: Small (faster loading, less memory)128: Medium (balanced quality and performance)160: Large (best quality, more memory usage)
-
simpleSftp.fileView.thumbnailCacheSize (number, default:
200, range: 50-1000) Maximum number of thumbnails to cache in memory. Higher values improve performance when revisiting folders, but use more memory. -
simpleSftp.fileView.thumbnailMaxFileSize (number, default:
10, range: 1-100) Maximum file size (MB) for thumbnail generation. Files larger than this will use generic icons.
-
simpleSftp.transferQueue.maxConcurrent (number, default:
2, range: 1-10) Maximum number of concurrent file transfers -
simpleSftp.transferQueue.autoRetry (boolean, default:
true) Automatically retry failed transfers -
simpleSftp.transferQueue.maxRetries (number, default:
3, range: 0-10) Maximum retry attempts for failed transfers -
simpleSftp.transferQueue.retryDelay (number, default:
2000, range: 1000-60000) Delay between retry attempts (milliseconds) -
simpleSftp.transferQueue.showNotifications (boolean, default:
true) Show notifications for transfer completion -
simpleSftp.transferQueue.historySize (number, default:
100, range: 10-1000) Maximum number of transfer history records to keep
-
simpleSftp.verification.enabled (boolean, default:
false) Verify file integrity after transfer using checksum. Requires md5sum/sha256sum on remote server. -
simpleSftp.verification.algorithm (enum:
md5|sha256, default:sha256) Checksum algorithm (MD5: faster, SHA256: more secure) -
simpleSftp.verification.threshold (number, default:
10, minimum: 0) Minimum file size (MB) for verification. Set to 0 to verify all files.
-
simpleSftp.transfer.preservePermissions (boolean, default:
true) Preserve file permissions (chmod) during transfers -
simpleSftp.transfer.preserveTimestamps (boolean, default:
true) Preserve file modification and access times -
simpleSftp.transfer.followSymlinks (boolean, default:
false) For single-file transfers, follow symbolic links instead of preserving them. When disabled, the extension attempts to preserve symbolic links where supported.
-
simpleSftp.transfer.deltaSyncEnabled (boolean, default:
true) Enable Delta Sync for recursive directory uploads. When enabled, unchanged files are skipped using modification-time comparison. -
simpleSftp.transfer.deltaDeleteRemote (boolean, default:
false) During Delta Sync directory uploads, delete remote files that no longer exist locally. -
simpleSftp.transfer.deltaPreserveTimestamps (boolean, default:
false) Pass through timestamp-preservation requests during Delta Sync directory uploads. Experimental and may not be fully supported on all servers. -
simpleSftp.transfer.deltaExcludePatterns (string[], default:
node_modules,\\.git,\\.vscode,.*\\.log) Exclude patterns applied when scanning local files for Delta Sync directory uploads.Current behavior:
- Delta Sync currently applies to recursive directory uploads
- File change detection currently uses modification time (
mtime) - The checksum compare mode is not yet exposed in Settings
-
simpleSftp.portForwarding.browserType (enum:
simple-browser|external, default:simple-browser) Browser type when clicking port numbers or forwarding addresses (simple-browser: VS Code internal, external: system default browser) -
simpleSftp.portForwarding.defaultProtocol (enum:
http|https, default:http) Default protocol when opening browsers
⚠️ Warning: Parallel transfer is an advanced feature that may not work with all SFTP server configurations. Only enable if you have tested it in your environment.
-
simpleSftp.parallelTransfer.enabled (boolean, default:
false) Enable parallel chunk-based transfer for large filesRequirements:
- Direct SFTP connection (not compatible with proxies, jump hosts, or tunnels)
- SFTP server support for concurrent connections
- Sufficient network bandwidth
Known Issues:
- May fail with proxy/bastion host setups
- May cause connection errors on some SFTP servers
- May require firewall configuration for multiple connections
-
simpleSftp.parallelTransfer.threshold (number, default:
100, minimum: 10) Minimum file size (MB) to trigger parallel transfer -
simpleSftp.parallelTransfer.chunkSize (number, default:
10, range: 1-50) Size of each chunk in parallel transfer (MB) -
simpleSftp.parallelTransfer.maxConcurrent (number, default:
5, range: 1-10) Maximum number of concurrent chunk transfers
-
simpleSftp.ui.hideStatusBar (boolean, default:
false) Hide the transfer status bar -
simpleSftp.speedUnit (enum:
auto|KB|MB, default:auto) Download speed display unit
- Host configurations (names, addresses, ports, groups) are synced across devices via VS Code Settings Sync
- Authentication credentials (passwords, private keys, passphrases) are stored locally only using VS Code's SecretStorage
- Credentials are never synced across devices for security
- Each device requires separate authentication configuration
- Sync is handled automatically by VS Code when Settings Sync is enabled
- Folder upload uploads files individually (not as archive)
- Recursive directory uploads currently traverse symlink targets instead of recreating symlinks
- Preserving symlinks whose targets are directories is not yet supported
- File permissions are preserved when possible
- Use "Test Connection" to verify credentials
- Check "Simple SFTP: Show Output Logs" for detailed error messages
- Verify SSH access works from terminal:
ssh user@host -p port
- Ensure OpenSSH Authentication Agent service is running
- Start service:
Start-Service ssh-agentin PowerShell (Administrator)
- Verify ~/.ssh/config file exists and is readable
- Check config file syntax is valid
See CHANGELOG.md for detailed release notes.
# Install dependencies
npm install
# Compile
npm run compile
# Watch mode
npm run watch
# Package extension
npm run package
# Publish to marketplace
npm run publishSee LICENSE file for details.
Contributions are welcome! Please feel free to submit issues or pull requests.
✨ 现代化设计的 SFTP 扩展,优雅简洁的双面板界面风格
提供流畅的文件传输、SSH 端口转发和智能远程主机管理,配置跨设备自动同步,带来高效优雅的工作体验,让远程开发更简单更美观。
如果你觉得这个扩展有帮助,可以请我喝杯咖啡!
- 远程文件直接编辑: 直接在 VS Code 中编辑远程文件
- 双面板文件浏览器: 本地和远程文件系统并列可视化界面
- 面包屑导航: 可点击的路径段,快速跳转目录
- 左键点击任意路径段跳转到对应目录
- 右键点击任意路径段展开路径上下文下拉选择
- 智能溢出处理 - 优先显示最后的路径段
- 支持 Windows (C:) 和 Unix (/) 路径格式,包括 Windows 盘符视图
- 文件权限: 显示和编辑远程文件的 Unix 风格权限
- 权限列显示 rwx 格式(如
rwxr-xr-x) - 右键菜单修改文件权限
- 支持八进制(755)和符号(rwxr-xr-x)输入格式
- 权限列显示 rwx 格式(如
- 键盘快捷键:
- Ctrl+A(Mac 上为 Cmd+A):选中当前面板所有可见项
- 实时搜索/过滤文件
- 点击按钮快速上传/下载
- Panel 或 Editor 区域显示模式
- 支持多个浏览器实例(Editor 模式)
- 面包屑导航: 可点击的路径段,快速跳转目录
- 快速上传/下载: 直接从资源管理器或编辑器上传或下载文件
- 路径书签: 保存并快速访问常用的远程目录
- 点击远程路径区域切换书签下拉菜单
- 从上下文菜单添加书签(文件、文件夹或空白区域)
- 快速导航到保存的远程目录
- 树形视图界面: 使用分组和颜色编码组织主机
- SSH 配置导入: 从 ~/.ssh/config 导入现有配置
- 导入/导出: 通过 JSON 文件备份或共享主机配置
- 跨设备同步: 主机配置通过 VS Code 设置同步自动同步
- 多种方法: 密码、私钥或 SSH Agent
- 安全存储: 凭据本地存储(永不同步)
- 免密码设置: 自动配置基于 SSH 密钥的认证
- Windows SSH Agent: 通过命名管道原生支持
- 传输队列: 可视化任务管理,实时进度显示
- 暂停、恢复或取消传输
- 自动重试失败的传输
- 传输历史与统计
- 基于优先级的队列(小文件优先)
- 高级功能:
- 大文件(100MB+)并行分块传输
- 文件完整性验证(MD5/SHA256)
- 保留文件权限和时间戳
- 智能主机选择(最近使用的优先)
- SSH 连接池: 自动连接复用,速度提升 5-10 倍
- 并行传输: 最多 5 个并发文件传输
- 大文件优化: 超过 100MB 的文件自动分块传输
- 端口转发管理: SSH 端口转发管理,支持自动刷新和重复防止
- 点击端口号或转发地址在浏览器中打开
- 转发状态变化时自动刷新表格
- 智能去重防止冗余记录
- 可配置使用内置(Simple Browser)或外部浏览器
- 在活动栏中打开 Simple SFTP 面板
- 点击工具栏中的 "+" 图标
- 按提示输入:
- 主机名称(显示名称)
- 主机名或 IP 地址
- 端口(默认:22)
- 用户名
- 默认远程路径
- 可选:分组和颜色
- 点击工具栏中的云下载图标
- 从 ~/.ssh/config 中选择要导入的主机
- 选择一个分组或创建新分组
- 导入的主机将出现在树形视图中
将主机配置导出为 JSON 文件,用于备份或分享:
- 导出所有主机:点击工具栏中的导出图标,或使用命令面板 → "Simple SFTP: Export All Hosts"
- 导出分组:右键点击分组 → "Export Group"
- 导出单个主机:右键点击主机 → "Export Host"
导出的 JSON 文件包含:
- 主机配置(名称、地址、端口、用户名、路径、颜色等)
- 分组信息
- 书签和最近使用的路径
- 注意:出于安全考虑,认证凭据(密码、私钥)不会被导出
从 JSON 文件导入主机配置:
- 点击工具栏中的"Import Hosts",或使用命令面板 → "Simple SFTP: Import Hosts"
- 选择要导入的 JSON 文件
- 查看导入预览,显示新增和重复的主机
- 确认导入
导入行为:
- 新主机:自动导入
- 重复主机(相同的
username@host:port):自动跳过 - 分组:现有分组自动合并;新分组会被创建
- 认证:导入后需要单独配置认证
- 在树形视图中右键点击主机
- 选择 "Configure Authentication"
- 选择认证方法:
- 密码
- 私钥(可选密码短语)
- SSH Agent
- 右键点击主机
- 选择 "Setup Passwordless Login"
- 提示时输入密码
- 扩展将自动将 SSH 公钥复制到远程主机
- 在资源管理器中右键点击任意文件或文件夹,或在编辑器中右键点击
- 选择 "Upload to Remote Host"
- 选择目标主机(最近使用的主机优先显示)
- 浏览并选择远程目录
- 使用目录项上的上传按钮快速上传
- 最近上传或下载过的主机显示在顶部
- 便于在常见工作流中重复使用相同主机
- 每个主机的认证状态清晰显示
- 在树形视图中右键点击主机
- 选择 "Download from Remote Host"
- 使用智能路径导航浏览远程目录
- 点击文件/目录上的下载按钮快速下载
- 根据需要切换点文件可见性
- 选择下载文件的保存位置
- 在资源管理器中右键点击任意文件或文件夹
- 选择 "Download from Remote Host to Here"
- 选择源主机(最近使用的主机优先显示)
- 浏览并选择远程文件/文件夹
- 文件直接下载到选中的本地文件夹
两种方法都支持:
- 下载单个文件或整个目录
- 带输入框的智能路径导航
- 最近使用的主机快速访问
- 实时进度跟踪
- 在树形视图中右键点击主机
- 选择 "Edit Host"
- 更新主机名、端口或其他设置
- 右键点击主机
- 选择 "Test Connection"
- 在通知中查看结果
- VS Code 1.108.0 或更高版本
- 远程主机的 SSH 访问权限
- 免密码设置需要:SSH 密钥对(~/.ssh/id_rsa 或类似)
在命令面板中可用以下命令(Ctrl/Cmd+Shift+P):
- Simple SFTP: Add Host - 添加新的远程主机
- Simple SFTP: Add Group - 创建主机分组
- Simple SFTP: Import from SSH Config - 从 ~/.ssh/config 导入
- Simple SFTP: Show Output Logs - 打开日志查看器
其他命令可通过树形视图和文件资源管理器的右键菜单访问。
在 VS Code 设置(Ctrl/Cmd+,)中配置 Simple SFTP:
-
simpleSftp.showDotFiles (布尔值,默认:
true) 在远程文件浏览器中显示隐藏文件和目录(点文件) -
simpleSftp.browser.openInEditor (布尔值,默认:
true) 在编辑器区域而不是面板中打开文件浏览器。启用后,支持为不同主机打开多个浏览器实例。 -
simpleSftp.browser.panelLayout (枚举:
equal|localMaximized|remoteMaximized,默认:equal) 双面板文件浏览器的默认布局模式:equal: 平分面板 50/50localMaximized: 本地面板最大化(远程面板隐藏)remoteMaximized: 远程面板最大化(本地面板隐藏)
-
simpleSftp.ui.defaultIconSize (枚举:
96|128|160,默认:96) 网格视图中文件图标的默认大小(像素):96: 小图标(节省空间)128: 中等图标(平衡视觉效果)160: 大图标(最佳可视性)
注意: 这是打开文件浏览器时的初始大小。您可以在网格视图中使用 Small/Medium/Large 按钮临时更改图标大小,不会影响此设置。
-
simpleSftp.fileView.defaultLayout (枚举:
list|grid,默认:list) SFTP 文件浏览器的默认视图布局:list: 详细表格视图,包含列(名称、修改时间、权限、大小)grid: 图标/网格视图,带图片缩略图(更适合视觉浏览)
-
simpleSftp.fileView.thumbnailSize (枚举:
96|128|160,默认:96) 网格视图中图片文件的缩略图大小(像素):96: 小(加载更快,内存占用少)128: 中(质量和性能平衡)160: 大(最佳质量,内存占用多)
-
simpleSftp.fileView.thumbnailCacheSize (数字,默认:
200,范围: 50-1000) 内存中缓存的缩略图最大数量。数值越大重新访问文件夹时性能越好,但占用内存越多。 -
simpleSftp.fileView.thumbnailMaxFileSize (数字,默认:
10,范围: 1-100) 缩略图生成的最大文件大小(MB)。大于此大小的文件将使用通用图标。
-
simpleSftp.transferQueue.maxConcurrent (数字,默认:
2,范围: 1-10) 最大并发文件传输数 -
simpleSftp.transferQueue.autoRetry (布尔值,默认:
true) 自动重试失败的传输 -
simpleSftp.transferQueue.maxRetries (数字,默认:
3,范围: 0-10) 失败传输的最大重试次数 -
simpleSftp.transferQueue.retryDelay (数字,默认:
2000,范围: 1000-60000) 重试之间的延迟(毫秒) -
simpleSftp.transferQueue.showNotifications (布尔值,默认:
true) 显示传输完成通知 -
simpleSftp.transferQueue.historySize (数字,默认:
100,范围: 10-1000) 保留的传输历史记录最大数量
-
simpleSftp.verification.enabled (布尔值,默认:
false) 传输后使用校验和验证文件完整性。需要远程服务器上有 md5sum/sha256sum。 -
simpleSftp.verification.algorithm (枚举:
md5|sha256,默认:sha256) 校验和算法(MD5: 更快,SHA256: 更安全) -
simpleSftp.verification.threshold (数字,默认:
10,最小值: 0) 验证的最小文件大小(MB)。设置为 0 验证所有文件。
-
simpleSftp.transfer.preservePermissions (布尔值,默认:
true) 传输期间保留文件权限(chmod) -
simpleSftp.transfer.preserveTimestamps (布尔值,默认:
true) 保留文件修改和访问时间 -
simpleSftp.transfer.followSymlinks (布尔值,默认:
false) 对单文件传输,跟随符号链接而不是保留它们。关闭时,在支持的场景下会尽量尝试保留符号链接。
-
simpleSftp.transfer.deltaSyncEnabled (布尔值,默认:
true) 为递归目录上传启用 Delta Sync。启用后,会基于修改时间跳过未变化的文件。 -
simpleSftp.transfer.deltaDeleteRemote (布尔值,默认:
false) 在 Delta Sync 目录上传期间,删除远端中本地已不存在的文件。 -
simpleSftp.transfer.deltaPreserveTimestamps (布尔值,默认:
false) 在 Delta Sync 目录上传期间传递保留时间戳请求。该功能为实验性能力,并不保证所有服务器都完整支持。 -
simpleSftp.transfer.deltaExcludePatterns (字符串数组,默认:
node_modules,\\.git,\\.vscode,.*\\.log) Delta Sync 目录上传扫描本地文件时使用的排除模式。当前行为:
- Delta Sync 当前仅用于递归目录上传
- 文件变化检测当前基于修改时间(
mtime) - 基于校验和的比较模式尚未在设置中开放
-
simpleSftp.portForwarding.browserType (枚举:
simple-browser|external,默认:simple-browser) 点击端口号或转发地址时使用的浏览器类型(simple-browser: VS Code 内置浏览器,external: 系统默认浏览器) -
simpleSftp.portForwarding.defaultProtocol (枚举:
http|https,默认:http) 打开浏览器时使用的默认协议
⚠️ 警告: 并行传输是高级功能,可能不适用于所有SFTP服务器配置。仅在您的环境中测试成功后再启用。
-
simpleSftp.parallelTransfer.enabled (布尔值,默认:
false) 为大文件启用基于并行分块的传输要求:
- 直连SFTP服务器(不兼容代理、跳板机或隧道)
- SFTP服务器支持并发连接
- 足够的网络带宽
已知问题:
- 代理/跳板机环境下可能失败
- 某些SFTP服务器可能出现连接错误
- 可能需要防火墙配置以允许多连接
-
simpleSftp.parallelTransfer.threshold (数字,默认:
100,最小值: 10) 触发并行传输的最小文件大小(MB) -
simpleSftp.parallelTransfer.chunkSize (数字,默认:
10,范围: 1-50) 并行传输中每个分块的大小(MB) -
simpleSftp.parallelTransfer.maxConcurrent (数字,默认:
5,范围: 1-10) 最大并发分块传输数
-
simpleSftp.ui.hideStatusBar (布尔值,默认:
false) 隐藏传输状态栏 -
simpleSftp.speedUnit (枚举:
auto|KB|MB,默认:auto) 下载速度显示单位
- 主机配置(名称、地址、端口、分组)通过 VS Code 设置同步在设备间同步
- 认证凭据(密码、私钥、密码短语)仅使用 VS Code 的 SecretStorage 本地存储
- 凭据永远不会在设备间同步,确保安全
- 每个设备需要单独配置认证
- 启用设置同步后,同步由 VS Code 自动处理
- 文件夹上传是逐个上传文件(不是打包上传)
- 递归目录上传当前会跟随符号链接目标,而不是在远端重建符号链接
- 对于目标是目录的符号链接,当前还不支持按符号链接原样保留
- 尽可能保留文件权限
- 使用 "Test Connection" 验证凭据
- 查看 "Simple SFTP: Show Output Logs" 获取详细错误信息
- 验证从终端访问 SSH:
ssh user@host -p port
- 确保 OpenSSH Authentication Agent 服务正在运行
- 启动服务:在 PowerShell(管理员)中运行
Start-Service ssh-agent
- 验证 ~/.ssh/config 文件存在且可读
- 检查配置文件语法是否有效
详细的发布说明请查看 CHANGELOG.md。
# 安装依赖
npm install
# 编译
npm run compile
# 监视模式
npm run watch
# 打包扩展
npm run package
# 发布到市场
npm run publish详情请查看 LICENSE 文件。
欢迎贡献!请随时提交问题或拉取请求。
