Merge pull request #501 from dtolnay/tgz

Download test suite as tgz rather than git
diff --git a/.travis.yml b/.travis.yml
index e0d31a6..5009889 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,10 +1,6 @@
 sudo: false
 language: rust
 
-cache:
-  directories:
-    - tests/rust
-
 rust:
   - nightly
   - stable
diff --git a/tests/clone.sh b/tests/clone.sh
index 48d9739..fa5a46b 100755
--- a/tests/clone.sh
+++ b/tests/clone.sh
@@ -1,24 +1,16 @@
 #!/bin/bash
 
-REMOTE=rust
-REPO=https://github.com/rust-lang/rust
 REV=63d66494aff57411bfec1dd2a3a5f1af900feab6
 
 set -euo pipefail
 cd "$(dirname "${BASH_SOURCE[0]}")"
 mkdir -p rust
-cd rust
+touch rust/COMMIT
 
-git init
-
-if git remote | grep --fixed-strings --line-regexp --quiet "$REMOTE"; then
-    git remote set-url "$REMOTE" "$REPO"
-else
-    git remote add "$REMOTE" "$REPO"
+if [ "$(cat rust/COMMIT)" != "$REV" ]; then
+    rm -rf rust
+    mkdir rust
+    curl -L "https://github.com/rust-lang/rust/archive/${REV}.tar.gz" \
+        | tar xz --directory rust --strip-components 1
+    echo "$REV" > rust/COMMIT
 fi
-
-if ! git cat-file -t "$REV" >/dev/null 2>&1; then
-    git fetch "$REMOTE" master
-fi
-
-git checkout "$REV"