2012-11-19 9 views
17

私はWindowsで作業しています。生産にはLinuxシステムがあり、いくつかのファイルを0777にchmodしたいのですが、Windows上で行う方法はわかりません。私はそれをコミット/プッシュすることができないので、生産ではなく、むしろそれを行います。ファイルをchmodしてWindows上のGitをコミットする方法は?

Windows上でファイルをchmod0777してGitにコミットする方法はありますか?クローン/プロダクションをプルするときに0777のままですか?

+0

WindowsでGIT BashまたはGIT Shellを使用している場合は、chmodコマンドを許可する必要があります。 – eisberg

+2

実行可能( '0755')にしたいのですか、それとも本当に' 0777'にしますか? –

答えて

32

あなたが実行可能ファイルとしてファイルをマークしたい場合は、あなたが本当にみんなのためにファイルを書き込み可能にしたい場合は、Linuxシステム上でpost-updateフックを設定する必要があります

git update-index --chmod=+x <your_file> 

を使用することができますgitはファイルのパーミッションを追跡しないので、実行可能なビットだけを追跡します。

-1

別の解決方法は、WindowsにCygwinをインストールすることです。

CygwinはUnixライクな環境をエミュレートしますが、すべてのcygwinプログラムはWindowsマシン上でネイティブに動作します。これは仮想マシンではありません。しかしcygwinバイナリはCygwinライブラリでコンパイルされているので、通常のWindowsプログラムでは理解できないUNIXスタイルのファイルアクセス許可のようなものを理解することができます。

したがって、Cygwin用のgitのバージョンをインストールする必要があります。 Cygwinを最初にインストールするときに、Cygwinインストーラからgitを選択するだけです。

+1

Cygwinは私のファイルがすでに+ xだったと主張しましたが、Unixのようなマシンでチェックされていればそれはそうではありませんでした。 'chmod + x 'を実行しても、gitが追跡していた実行可能ビットは変更されませんでした。 @ crater2150の答えが働いた。 –

+0

でも、一見不十分です。 @ creater2150のgit update-indexも私のために働いていました。 –