I see that others have posted on this issue before, so I am just posting this in the hope that somebody may have found a good solution or workaround.
Our experience is that once a Madcap project reaches a reasonable size, switching between git branches becomes more or less impossible - Madcap becomes unresponsive for many minutes. In many cases, it interferes with the screen refresh process, leaving patches of the Madcap UI obscuring other application windows, so you can't even work on something else while waiting. The only way out if this happens is to terminate the Madcap process.
The same problem occurs if, instead of using Madcap to change branch, you change branch on the command line or using an external tool. The branch change itself is performed without any problem, but Madcap hangs. So it appears that it is not changing branch itself that causes the problem, but that Madcap hangs while adjusting to the new context.
More specifically, it seems to be not Madcap itself that hangs, but the Madcap source control extension. In other words, you can completely fix the problem by unbinding the project from git and only using the command line or an external tool for git operations.
This problem makes the Madcap git extension more or less unusable for us - unless somebody out there has a workaround we haven't thought of, or that a fix is planned for the near future.