GitLab runner use same folder for diffrent environments

Hello together,

I have a problem. I have two merge requests from two different branches to the master branch in a project. Now I want to start an environment for each merge request. I do this with a shell executor and I start docker container with docker run image where I mount the folder from the build process inside the container. Now my problem is that each time the jobs run the checkout get overwritten by the new pipeline job and all my environments have now the same code but they should be different.

Does anyone have a solution for me how I can configure the gitlab runner to have different checkout folder for each merge request?