## Script to initialize the git repository and link it to the svn.
## The synchronization requires two pushes
## (1st push=svn dcommit, 2nd push=git push)
## WARNING: we assume the svn and the git are up-to-date
## https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Git-svn

SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd ${SCRIPT_DIR}/..

echo "WARNING: this script will setup the git repository."
echo "It will connect the git to the svn (git svn init) and"
echo "install a hook to ensure the synchronization between the two."
echo "The hook (UTIL/pre-push) will be called at each git push."
# echo "or download it in the git-trunk/ folder (and link with git-svn)."

while true; do
    read -p "Do you wish to continue? [Y/n] " yn
    case $yn in
        [Yy]* ) break;;
        [Nn]* ) exit;;
        * ) break;;
    esac
done

# URL=git@gitlab.in2p3.fr:la-communaut-des-mod-les-atmosph-riques-plan-taires/git-trunk.git
# LOCAL_URL=`git remote get-url origin 2>/dev/null`
# if [ "${LOCAL_URL}" !=  "${URL}" ];then
#     git clone ${URL}
#     cd git-trunk
# fi

### link svn to git as git-svn branch
### (need git-svn to work)
git svn init https://svn.lmd.jussieu.fr/Planeto/trunk

git update-ref refs/remotes/git-svn refs/remotes/origin/master
# git svn rebase # not used (we assume we're up-to-date)

### install pre-push hook to ensure
### users push only commits in sync with svn

cp UTIL/pre-push .git/hooks

