#!/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 | |
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" | |
fi | |
if ! git cat-file -t "$REV" >/dev/null 2>&1; then | |
git fetch "$REMOTE" master | |
fi | |
git checkout "$REV" |