2016-05-18 11 views
1

ベアリポジトリのポスト受信(または他のフック)フォルダを移動/名前変更することは可能ですか?Git:ポスト受信時のフォルダ移動

#!/bin/sh 
mv /path/to/worktree/src /path/to/worktree/public 

私はエラーを取得するリポジトリにプッシュしよう:

remote: mv: cannot stat `/path/to/worktree/src': No such file or directory 

私はフォルダは私の地元の支店に存在することを確信しています。

+1

ベアリポジトリにはworkdirがありません。そのため、 "裸"と呼ばれています。 – kan

+0

もちろん、もちろんです。 'post-receive'の後半で' git --work-tree =/path/to/worktree/--git-dir =/path/to/repo/checkout -f master'と呼んでいます。だから、たぶん 'mv'を直後に呼び出すだけの問題かもしれません。 – NinjaFart

答えて

2

Later in post-receive I am calling git --work-tree=/path/to/worktree/ --git-dir=/path/to/repo/ checkout -f master
So, perhaps it's just a matter of calling mv right after.

正確:代わりbare repo現在の実際のworktree(/path/to/worktree/)の右側後、。裸のレポではなく、チェックアウトされたレポでファイルに対するアクションを実行する必要があります。

もう1つのアプローチはpush directly to a non-bare repoですが、あなたのアプローチは安全です(最初に裸のレポを更新してから別の場所でチェックアウト/更新する)。

関連する問題