2016-09-06 43 views
0

我有一个MeteorJS项目,并创建了一个打包脚本来构建所有的依赖关系并进行部署,这很好。meteorjs为现有的软件包/项目创建补丁

我想知道是否有命令来创建补丁。这个想法是当我添加新的文件和功能,我想创建一个补丁,只建立和部署这些文件。

我的包脚本看起来像:

echo "Check if output folder exists" 
if [ ! -d "output" ]; then 
    mkdir output 
fi 

echo "Building the project" 
meteor build output/ --directory 

echo "Changing directory" 
cd output/bundle/programs/server 

echo "Installing all Node dependencies" 
nmp install 

cd ../../../ 

echo "Compressing the package" 
zip -r bundle.zip bundle 

回答

0

好像rsync可以帮助你。这是一个命令行工具,它只能同步源和目标之间的差异。适用于文件和文件夹。

您可以使用此行代码:

rsync -arv output/bundle/ [email protected]$myhost.com:/home/username/myapp/bundle/ 

此命令将上传的差异从本地文件夹bundle到远程bundle

维基百科上的更多信息:https://en.wikipedia.org/wiki/Rsync

+0

感谢您的答复,它不会是可能对我使用rsync;原因是我只能部署zip文件并相应地解压缩它们,所以最糟糕的情况是创建一个旧包的本地实例,执行rsync,然后压缩它们以部署它。 – Vivek

+0

据我所知,你可以使用rsync压缩文件。我使用rsync来部署Meteor应用程序包(tar.gz)。 – imkost