NAS上の共有リポジトリにpushされた後、BitBucketへpushするための設定
BitBucketに空のリポジトリを作成する。(リポジトリ名はsampleとする。)
/c/git/non-bare/上にローカルのsample.gitをcloneする。
$ mkdir -p /c/git/non-bare
$ cd /c/git/non-bare
$ git clone /c/git/bare/sample.git
BitBucket上で作成したリポジトリを登録しておく
$ git remote add bitbucket [email protected]:[ユーザ名]/sample.git
BitBucketヘッダ右上の[アカウントの管理]-[SSHキー]を選択し、公開鍵を設定する。
ローカルリポジトリをbitbucketに登録する。
$ git push -u bitbucket --all
$ git push -u bitbucket --tags
BitBucketにpushされたことを確認する。
#!/bin/sh
REPOSITORY_NAME=sample # リポジトリ名
USER_NAME=ktx2207 # ユーザ名
LOCAL_NON_BARE_REPOSITORY_ROOT=/c/git/non-bare # ノンベアリポジトリの配置場所
LOCAL_BARE_REPOSITORY=/c/git/bare/${REPOSITORY_NAME} # ベアリポジトリの配置場所
rm -rf ${LOCAL_NON_BARE_REPOSITORY_ROOT}/${REPOSITORY_NAME} # 既に存在するノンベアリポジトリを削除
mkdir -p ${LOCAL_NON_BARE_REPOSITORY_ROOT} # ノンベアリポジトリの配置場所を作成
cd ${LOCAL_NON_BARE_REPOSITORY_ROOT} # ノンベアリポジトリの配置場所に移動
git clone ${LOCAL_BARE_REPOSITORY} # ローカルのベアリポジトリからclone
cd ${LOCAL_NON_BARE_REPOSITORY_ROOT}/${REPOSITORY_NAME} # cloneしたノンベアリポジトリに移動
git --git-dir=.git remote add bitbucket [email protected]:${USER_NAME}/${REPOSITORY_NAME}.git # bitbucketをリモートとして追加
git --git-dir=.git push -u bitbucket --all # bitbucketにpush
git --git-dir=.git push -u bitbucket --tags
$ chmod 775 post-receive
$ mv post-receive /c/git/bare/sample.git/hooks