diff --git a/TODO b/TODO
index 8f5b1bf2e55bccc735e3ec9561d37c6e4e65784e..4cb60935dc2b88c8d4ca7ba607b49816abae98c4 100644
--- a/TODO
+++ b/TODO
@@ -1,5 +1,3 @@
-* vcsh clone fails when remote is empty
-
 # Related #
 
 * Package for Debian
diff --git a/vcsh b/vcsh
index ec0301f247822a053b85c9a90a962446377ecc0d..4979d71079627dd304ac9ebe132b55813836e4f7 100755
--- a/vcsh
+++ b/vcsh
@@ -64,6 +64,10 @@ clone() {
 	git remote add origin "$GIT_REMOTE"
 	git config branch.master.remote origin
 	git config branch.master.merge  refs/heads/master
+	if [ -z $(git ls-remote 2> /dev/null) ]; then
+		info "remote is empty, not merging anything"
+		exit
+	fi
 	git fetch
 	for object in $(git ls-tree -r origin/master | awk '{print $4}'); do
 		[ -e "$object" ] &&