我成功地设置了一个 Grunt 任务,使用 grunt-ssh 将文件通过 SFTP 上传到我的开发服务器:
sftp: {
dev: {
files: {
'./': ['**','!{node_modules,artifacts,sql,logs}/**'],
},
options: {
path: '/path/to/project',
privateKey: grunt.file.read(process.env.HOME+'/.ssh/id_rsa'),
host: '111.111.111.111',
port: 22,
username: 'marksthebest',
}
}
},
但是当我运行它时,它会上传所有内容。有成千上万个文件。我没有时间等待每次修改文件时一个一个地上传。
我该如何设置监视器,只上传我已更改的文件,以及在我更改它们后立即上传?
(对于好奇的人,服务器是本地网络上的虚拟机。它运行在不同的操作系统上,设置与生产环境更相似。如果我能正确地让它工作,上传速度应该非常快)
rsync
上传整个项目目录的速度快了一亿倍,而且设置起来非常容易,但它与newer
不兼容。我在 ticket 上向他们提出了问题;不确定这是新版本的错误还是我弄错了什么。 - mpen