diff --git a/Main.hs b/Main.hs
--- a/Main.hs
+++ b/Main.hs
@@ -98,7 +98,7 @@
         cref <- fromJust <$> resolveReference "HEAD"
         hc   <- lookupCommit cref
         rcoid <- Tagged <$> parseOid (toStrict remoteHead)
-        objs <- missingObjects (Just rcoid) (commitOid hc)
+        objs <- listObjects (Just rcoid) (commitOid hc) False
         for_ objs $ \obj -> case obj of
             Git.CommitObjOid coid -> do
                 commit <- lookupCommit coid
@@ -113,9 +113,9 @@
     mref <- liftIO $ withRepository lgFactory gd $ lookupReference "HEAD"
     case mref of
         Nothing -> error "Could not find HEAD"
-        Just (Reference _ (RefObj _)) ->
+        Just (RefObj _) ->
             error "Cannot push from a detached HEAD"
-        Just (Reference _ (RefSymbolic (fromStrict -> branch)))
+        Just (RefSymbolic (fromStrict -> branch))
             | "refs/heads/" `TL.isPrefixOf` branch ->
                 TL.init <$> git [ "config"
                                 , "branch." <> base branch <> ".remote" ]
diff --git a/git-gpush.cabal b/git-gpush.cabal
--- a/git-gpush.cabal
+++ b/git-gpush.cabal
@@ -1,5 +1,5 @@
 Name:    git-gpush
-Version: 1.4.0
+Version: 2.0.0.0
 
 Synopsis:    More intelligent push-to-GitHub utility.
 Description: More intelligent push-to-GitHub utility.
@@ -23,8 +23,8 @@
     Build-depends: base                 >= 4 && < 5
                  , bytestring           >= 0.9.2.1
                  , containers           >= 0.4.2.1
-                 , gitlib               >= 1.4.0
-                 , gitlib-libgit2       >= 1.4.0
+                 , gitlib               >= 2.0.0.0
+                 , gitlib-libgit2       >= 2.0.0.0
                  , hslogger             >= 1.2
                  , old-locale           >= 1.0.0.4
                  , optparse-applicative >= 0.5.2.1
