I know this question has been asked before but I can't seem to make them work now.
I have tried:
https://martinbuberl.com/blog/tortoisegit-icons-not-showing-workaround/
They now refuse to display.
Here is a snapshot of the registry key items:
From https://tortoisegit.org/support/faq/#ovlnotall:
The number of overlays allowed by Windows is limited to 15. Windows uses 4 of those, and the remaining 11 can be used by other applications. And if you have OneDrive installed, that uses another 5 slots. If you then have another cloud drive tool installed, those slots can be used up. TortoiseGit and TortoiseSVN try to be a "Good Citizen ™" and limit its use of overlays to give other apps a chance.
You can check which other apps are using overlays by using Regedit to look at
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers
If there are too many overlay handlers installed and TortoiseGit does not show any overlays, you can try to delete some of the installed handlers from the registry. But be careful when editing the registry!
Deletion is sometimes a bit tricky. You can also try to prefix the Tortoise* entries with spaces and/or double quotes (").
The overlay handler are loaded by the order of the ASCII code. Thus you need to make sure the Tortoise* overlay handler has a high precedence to be honored. This can be achieved by prepending spaces (as seen in the screenshot there is a real war going on who has the most spaces).