5

git reset --hard origin/masterパーミッションのみが変更された場合でもファイルをチェックするのではなく、各ファイルの実際のコンテンツが変更された場合にのみ、ファイルをチェックアウトするようにしようとしています。

git reset に渡すことができるパラメーターはありますか、それともスクリプトでしか解決できないものですか?

4

2 に答える 2

4

ここで説明されているように設定core.fileModeしてみてください(docs)(うまくいくはずです)。これにより、ハード リセット時に Git がアクセス許可の変更を無視するようになります。ここで、Git がファイルを読み取ることができなかった場合 (たとえば、パーミッションを 000 に設定した場合)、ハード リセットを行うと、コミットされた元のパーミッションが復元されることがわかりました。falsegit config core.fileMode false

興味深いかもしれない別の考えは、リポジトリ内のすべてのファイルのアクセス許可を必要なものに設定するフックを作成することです。これにより、危険なアクセス許可を持つ新しいファイルを誤って残していないという保証が得られる場合もあります。

于 2013-06-19T04:45:43.803 に答える
3

Git の MLで問題を解決できました。

だから基本的に:

git update-index --refresh

前:git resetトリックをしました:)

于 2013-06-19T09:29:02.840 に答える