Gitlab Pipelines, Branches, Runners and Projects

Currently I have one project repository. It has two branches. Each branch contains different content of .gitlab-ci.yml file. So in each branch, I can run a different pipeline. Because each pipeline provides a different service, I can maintain the two branches permanently. But from Gitlab design of branches, is it a good human practice? Can one Gitlab pipeline run two different .gitlab.ci.yml with two project repositories?

Thank you,

Xinhuan Zheng