summaryrefslogtreecommitdiff
path: root/scripts/update-git-remotes
blob: 04300cca3e54cbcef2003c403a3b83fbdcc1eb71 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh
#
# Creates git remotes from the user db
# TODO: detect users' git address changes
#

if ! `dirname "$0"`/check_db_safety; then
 exit 1
fi

USR_DB_DIR=./db/usr
GIT_REPO=./.git
GIT_REMOTES_DIR=$GIT_REPO/refs/remotes

for u in `ls -1 $USR_DB_DIR`; do
  git_url_file="$USR_DB_DIR/$u/git"

  if [ -f $git_url_file ]; then
    git_url=`cat $git_url_file`
    git_remote_name="anonet_$u"

    if [ -d $GIT_REMOTES_DIR/$git_remote_name ]; then
      # The remote already exists;
      # TODO: Update it if it has changed.
      echo "skipping $u" >&2

    else
      git remote add -t master -m master $git_remote_name $git_url

    fi

  fi
done