For complex codebases it’s better to use copilot since they do the work of providing context to gpt for you. CopilotX will do a lot more but it’s still waitlist signup. You could hack something together yourself using the API. The quickest option is just to paste the relevant code in to the chat along with your prompt.
I tend to use both. Copilot is vastly better for helping scaffold out code and saves me time as a fancy autocomplete, while I use ChatGPT as a "living" rubber duck debugger. But I find that ChatGPT isn't good at debugging anything that isn't a common issue that you can find answers for by Googling (it's usually faster and more tailored to my specific situation, though). That's why I think it's mostly beneficial in that way to junior devs. More experienced devs are going to find that they can't get good answers to their issues and they just aren't running into the stuff ChatGPT is good at resolving because they already know how to avoid it in the first place.