[devel] git -- backup
Денис Смирнов
mithraen на altlinux.ru
Ср Авг 25 20:33:04 UTC 2010
On Wed, Aug 25, 2010 at 11:48:03PM +0400, Sergey Vlasov wrote:
SV> При использовании с git clone опция --mirror приводит к созданию
SV> remote origin с параметрами
SV> fetch = +refs/*:refs/*
SV> mirror = true
SV> в отличие от обычного
SV> fetch = refs/heads/*:refs/remotes/origin/*
Это я понял. Просто обратил внимания на рекомендацию если я создаю
репозиторий ручками (а я так и делаю -- ибо они у меня уже rsync'нуты),
все равно устанавливать mirror=yes. Он действительно действует только на
push, и главные секреты:
1. fetch = +refs/*:refs/*
2. опция --prune у fetch
Я правильно понял?
Вот скрипт который у меня сейчас запущен:
#!/bin/sh
BACKUP_DIR=~/backup/git.alt
find "$BACKUP_DIR" -mindepth 1 -maxdepth 1 -type d | while read dir; do
n=${dir##*/}
[ -L "$dir/hooks" ] && rm -f "$dir/hooks"
mkdir -p "$dir/branches"
mkdir -p "$dir/hooks"
echo $n
git --git-dir="$dir" pack-refs --all
git --git-dir="$dir" config core.bare true
git --git-dir="$dir" config remote.origin.url git.alt:packages/$n
git --git-dir="$dir" config remote.origin.fetch '+refs/*:refs/*'
git --git-dir="$dir" config remote.origin.mirror true
git --git-dir="$dir" fetch --prune
done
--
С уважением, Денис
http://mithraen.ru/
----------------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20100826/3c441bb3/attachment.bin>
Подробная информация о списке рассылки Devel