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

set :copy_exclude, %w{.git .DS_Store web concept config lib}

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

最佳答案

实现此目的的方法是将 .gitattributes 添加到您的 repo 的根目录。它的工作原理与 .gitignore 非常相似。只需在您的存储库中添加您想要的所有文件的路径,而不是在您的临时/生产服务器上,然后是 export-ignore 和 commit+push 更改。

示例 .gitattributes 文件:

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

# Files
license.txt export-ignore
readme.html export-ignore

然后像往常一样部署。更多信息 here

关于capistrano - 如何在没有 copy_exlude 的情况下使用 Capistrano 3 忽略文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30759507/

10-14 06:08