我创建了这个回购作为样本: https://github.com/neves/deploy-workflow
我在“master”上工作,并使用“deploy”分支部署到服务器。 在master分支上,我不想跟踪资产/供应商/ *,所以我忽略它们。
在部署分支上,我添加它们,因为它们需要存在才能部署。 一切都在这里工作。
问题是,当我结帐回主人时,资产/供应商/文件夹中被忽略的内容将被删除。
我怎么能阻止它?有没有更好的方法来保持一个单独的分支与一些不同的文件一起部署?
答案 0 :(得分:0)
您可以为master
分支设置“excludefile”指令(为了忽略assets/vendor/*
),而不忽略deploy
中的该目录分支。
请参阅“Using git, how do I ignore a file in one branch but have it committed in another branch?”
cd .git/
$ touch info/exclude_from_master
$ echo "assets/vendor/" > info/exclude_from_master
git config core.excludesfile +info/exclude
git config branch.master.excludesfile +info/exclude_from_master