diff --git a/hggit/gitrepo.py b/hggit/gitrepo.py
index aa15905ca87fd1e13c60684ff40ccde026cd7dd0_aGdnaXQvZ2l0cmVwby5weQ==..718b9905b8546cab8f7aa9e895af8ef327127a36_aGdnaXQvZ2l0cmVwby5weQ== 100644
--- a/hggit/gitrepo.py
+++ b/hggit/gitrepo.py
@@ -6,6 +6,6 @@
 
 peerapi = False
 try:
-    from mercurial.repository import peer as peerrepository
+    from mercurial.interfaces.repository import peer as peerrepository
     peerapi = True
 except ImportError:
@@ -10,6 +10,10 @@
     peerapi = True
 except ImportError:
-    from mercurial.peer import peerrepository
+    try:
+        from mercurial.repository import peer as peerrepository
+        peerapi = True
+    except ImportError:
+        from mercurial.peer import peerrepository
 
 
 class basegitrepo(peerrepository):