Windows の git でファイルの操作権限を追加して commit

実装をリポジトリに push し、サーバ側で clone > compile > run しようとした時、
git clone したファイルをシェルスクリプトから実行しようとしたら実行権限がありませんでした。

呼び出し側で、対象に chmod で実行権限付与することも出来ますが、
そもそも実行権限を付与した状態で git に push していれば何も考えなくてよさそう。。

Commit の方法

多分、以前にも同じ状態に陥ったことがあるぞ、と記憶が蘇ったが、
忘れてしまっているので備忘録的に書いておきます。

実行権限のみ、付与する場合

$ git update-index --add --chmod=+x [ファイル名]

実行権限のみ、はく奪する場合

$ git update-index --add --chmod=-x [ファイル名]

GUI の Git クライアントを利用している場合

GUIツール使ってて、環境変数に git を追加していないって場合は、
下記のように直接 git を参照すればいいかも。

下記は、普段Gitクライアントの Fork を利用しおり、Gitクライアントを別で用意するのが面倒で、
Fork の組み込み git を直接参照した例です。。

$ C:\Users\[ユーザ名]\AppData\Local\Fork\gitInstance\[クライアントのバージョン]\bin\git update-index --add --chmod=+x

以上です!

コメント

タイトルとURLをコピーしました