【Git】 Git ~ バックアップ / Windows 編 ~

  ■ バックアップ方針

色々な方法があると思うが...

バックアップ先から定期的に、git cloneを行う(それだけ)

 

  ■ 想定環境

 * バックアップ先:Windows / Gitインストール済 <= こっちでバックアップ
 * バックアップ元:Linux(CentOS7) / Gitインストール済 / SSH接続

  前提条件

 * Gitがインストールされていること
Linux
https://blogs.yahoo.co.jp/dk521123/37613741.html
Windows
https://blogs.yahoo.co.jp/dk521123/37686059.html
 * 公開鍵認証でアクセスできること(以下の関連記事の「■ 公開鍵認証でアクセスする」を参照)
Windows
https://blogs.yahoo.co.jp/dk521123/37686059.html

 

  ■ 手順

  【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】のバッチファイルを指定

 

  関連記事

  Git

Git ~ 初期設定 / Windows 編 ~
https://blogs.yahoo.co.jp/dk521123/37686059.html
Git ~ 初期設定 / Linux 編 ~
https://blogs.yahoo.co.jp/dk521123/37613741.html
Git ~ 入門編 ~
https://blogs.yahoo.co.jp/dk521123/37614338.html
Git ~ 基本編 / 共有リポジトリ
https://blogs.yahoo.co.jp/dk521123/37617105.html
Git ~ 基本編 / ブランチ ~
https://blogs.yahoo.co.jp/dk521123/37615864.html
Git ~ 基本編 / マージ・リベース ~
https://blogs.yahoo.co.jp/dk521123/38097330.html
Git ~ 基本編 / あれこれ ~
https://blogs.yahoo.co.jp/dk521123/37616740.html
Git ~ Web UI編 ~
https://blogs.yahoo.co.jp/dk521123/37634122.html
Git ~ Web UI / Ginatra 編 ~
https://blogs.yahoo.co.jp/dk521123/37701141.html
Git ~ Web UI / GitLab 編 ~
https://blogs.yahoo.co.jp/dk521123/37722002.html

  その他

バッチ ~基本編 / ファイル・ディレクトリの扱い[2] ~
https://blogs.yahoo.co.jp/dk521123/20448243.html