What I could find is that, solution provided in “Does-circleci-2-0-work-with-monorepos?” is more specific to a single job and not for a complete workflow. In my case I have configured 3 different workflows corresponding to 3 different projects ( e.g A, B, C) residing in the same github repository. When I push code changes for project A it should only trigger workflow corresponding to project A only.
Above solution won’t stop all workflows from getting triggered. The only thing I can do is to stop these workflows once it got triggered. This can be done by putting an if condition inside very first job of each workflow to check if changes done are related with that workflow or not. If not then exit workflow with some error code, which will not be the right way. Errors in build jobs always triggers an email to all who are following the project.