如何在不使用 copy_exlude 的情况下使用 Capistrano 3 忽略文件

Ole*_*ann 5 capistrano capistrano3

在 Capistrano 2 中,可以使用 copy_exclude 排除 Git 存储库中的某些文件:

set :copy_exclude, %w{.git .DS_Store web concept config lib}
Run Code Online (Sandbox Code Playgroud)

这在 Capistrano 3 中不再可能。如何排除我想要在 Git 存储库中但不一定在我的服务器上的某些文件?

Ole*_*ann 5

实现此目的的方法是将 a 添加.gitattributes到存储库的根目录中。它的工作原理与.gitignore. 只需添加您想要在存储库中但不在临时/生产服务器上的所有文件的路径,然后export-ignore提交并推送更改。

样本.gitattributes文件:

# Folders
/config export-ignore
/lib export-ignore

# Files
license.txt export-ignore
readme.html export-ignore
Run Code Online (Sandbox Code Playgroud)

然后像往常一样部署。更多信息请点击此处