私のサーバーの1台にgitoliteのセットアップがあり、gitリポジトリがたくさんあります。だから私はこれらのすべてのバックアップを取ることを決めたthis約git bundle
を見つけた。そして、それに基づいて、バックアップを取ってrsync
を使用して、スクリプトbackup_base_dir=/home/bean/gitbackup/
に言及し、と私は同じマシンではなく、別のフォルダにリポジトリのバックアップを取っています上記のスクリプトを第一には、以下のスクリプトあるサーバーから別のサーバーにgitのバックアップを取る方法
#!/bin/bash
projects_dir=/home/bean/git/
backup_base_dir=/home/bean/gitbackup/
test -d ${backup_base_dir} || mkdir -p ${backup_base_dir}
pushd $projects_dir
for repo in `find $projects_dir -type d -name .git`; do
cd $repo/..
this_repo=`basename $PWD`
git bundle create ${backup_base_dir}/${this_repo}.bundle --all
cd -
done
popd
cd $backup_base_dir
rsync -r . [email protected]_address:/home/bean1/git_2nd_backup
を作成しました別のマシン/サーバー。だから私の質問は、同じマシンでのバックアップを避けるための方法はありますか、私は直接別のサーバー/マシンにバックアップすることができます。同じマシンでバックアップを取り除き、サーバーマシンに直接バックアップしたいと考えました。
はGitHubのために、これは動作します両方のマシンが/サーバはUbuntu 16
。 –
あなたは、ローカルの拳をコピーする必要はなく、サーバーAからサーバーBにバックアップしたいと述べたが、私が提案する解決策は、リポジトリを遠隔から引き出すためのもので、ローカル複製を避けることだ。 'gitolite 'あなたは設定ファイルを解析してリモートを引っ張ることができるので、しかしすべてが相対的です – nbari