问题描述
我们使用 Azure DevOps Repo 作为我们的代码存储库,那里有 3 个分支。他们是 Dev、UAT 和 master。当开发人员需要处理某个功能时,他/她会从 Dev 创建一个功能分支,然后在该功能分支上工作。开发完成后,他们通过创建拉取请求将来自功能分支的更改与 Dev 合并。当更改准备好进行测试时,我们会将 Dev 分支与 UAT 分支合并。这时候我们需要排除一些特征,不需要将它们合并到UAT中。所以,我的问题是如何在 Azure DevOps Repo 上做到这一点?
解决方法
你不能那样做。在这种情况下,您需要将合并策略从 feature->Dev->Uat->master
更改为 feature->Dev;feature->Uat;feature->master
。但是,这种方式过于复杂,无法支持和管理哪些功能被合并,哪些没有。
在 Azure DevOps 上的拉取请求中排除文件
确实,没有办法简单地从拉取请求中排除源代码控制的文件。
作为一种解决方法,我们可以参考此 doc 来配置 .gitignore
和 .git/info/exclude
文件以忽略文件更改。
忽略 Git 存储库中的文件:我们可以与团队成员共享 .gitignore 文件并推送到 Git 存储库。要仅排除系统上的文件,请编辑本地存储库中的 .git/info/exclude 文件。对此文件所做的更改不会与其他人共享。它们仅适用于该存储库中的文件。此文件的语法与 .gitignore 中使用的相同。
另外,我发现了一个功能请求,你可以投票并关注suggestion ticket。