【0】バックアップ方針
色々な方法があると思うが... バックアップ先から定期的に、git cloneを行う(それだけ)
【1】想定環境
* バックアップ先:Windows / Gitインストール済 <= こっちでバックアップ * バックアップ元:Linux(CentOS7) / Gitインストール済 / SSH接続
1)前提条件
* Gitがインストールされていること * 公開鍵認証でアクセスできること
1)手順
[1] Windows側でバックアップ対象のリポジトリをcloneする
コマンドプロンプトを立ち上げ、 バックアップするフォルダまで移動し、git cloneする git clone 【OSユーザ名】@【IP/Host】:【パス】 [例] git clone admin@192.168.16.XXX:/home/admin/.git/helloworld.git ... バックアップしたい分だけ、cloneする
[2] バックアップ用のバッチファイルを作成
バックアップするフォルダ直下に保存。 フォルダ配下の全レポジトリに対して、git pullを行う echo off FOR /d %%repository IN (%~dp0\*) DO ( REM for backup cd %%repository git pull cd .. )
補足:SSH公開鍵認証の必要性
* SSH公開鍵認証しないと、 「git pull」するときにパスワード聞かれるので必要
[3] タスクスケジューラによりバッチを定期実行する
Windowsタスクスケジューラにより [2]を定期実行するように設定する * 基本タスクを作成 + トリガー:毎日バックアップする時間(ex. 23:45)を指定 + 操作 :「プログラムの開始」で[2] のバッチファイルを指定