在 VSCode 中每次保存时运行 rsync

问题描述 投票:0回答:3

我的本地系统上有一个存储库,正在远程服务器上测试我的更改。我正在使用 VSCode 进行开发。我希望每次保存时,rsync 都应在后台运行,并将当前本地文件中的更改与远程同步。我如何使用 VSCode 实现这一目标?

visual-studio-code rsync vscode-extensions remote-server
3个回答
9
投票

每当我在 VSCode 中点击“保存”时,我都会使用“保存并运行”vscode 扩展在本地和远程服务器之间同步代码。以下是我正在使用的配置。 "saveAndRun": { "commands": [ { "match": ".*", "cmd": "rsync -av --no-owner ${file} {destination folder}${relativeFile}", "useShortcut": false, "silent": false }, ] }

运行 
rsync

命令时生成的输出可以在 VSCode 终端中看到。您可以在

.vscode/settings.json
文件中添加上述配置。您可以了解有关编辑 settings.json 文件的更多信息
此处


2
投票
Sync-Rsync 扩展

旨在实现此目的。


1
投票
onDidSaveTextDocument

事件在保存文件后运行代码。该代码使用

exec
包的
child_process
函数来运行命令。在这种情况下,它会启动 Chrome 浏览器。
import * as vscode from 'vscode';
import * as path from 'path';

import * as cp from 'child_process';

export function activate(context: vscode.ExtensionContext)
{
    vscode.workspace.onDidSaveTextDocument((d) =>
    {
        vscode.window.showInformationMessage("Document saved:" + path.basename(d.fileName));

        const start = (process.platform == 'darwin' ? 'open' : process.platform == 'win32' ? 'start' : 'xdg-open');
        cp.exec(start + ' chrome ' );
    });
}

© www.soinside.com 2019 - 2024. All rights reserved.