ACLを介してサブフォルダ(.gitフォルダなど)の削除を保護するには?

ACLを介してサブフォルダ(.gitフォルダなど)の削除を保護するには?

私の開発パスにはかなり大きな規模のgitリポジトリアーカイブがあり、その多くにはまだリリースされていないブランチやリポジトリが含まれています。

しかし、私は本当に書き込みをしたい理由なく、フォルダとその.gitフォルダを削除したいと思います。

それで、これを達成する方法があるかどうか疑問に思います。

基本的には次のようになります。

repo
├── .git
│   ├── config
│   ├── index
.   .
.   .
.   .

.git作業中に削除を避けたいのですが、rm -rf repo読み取り/書き込みモードでファイル(および友達)にアクセスし続け、それ自体に新しいファイルを書き込むことができることを確認したいと.git/config思います。.git/

解決策は何ですか?私はこれまでいくつかのトリックを試してみましたが、それらのどれも私にこのようなものを提供しませんでした。マウントを使うともっと役に立つかもしれませんが、すべて同じ場所に保管したいと思います。

答え1

あなたはそれを使用することができますrm-protection

以下を実行してインストールします。

$ pip install rm-protection

このプログラムのバイナリはrm-p便宜のために追加されました。

$ echo 'alias rm="rm-p"' >> ~/.bashrc

フォルダを保護するには、.git次の手順を実行します。

$ protect .git
Question for .git: Do you really want to delete me?
Answer: Yes, I really do

削除しようとするときは、セキュリティに関する質問を提供して回答する必要があります。

$ rm -rf .git/
rm-p: .git: Do you really want to delete me?
Answer: No
rm-p: Wrong answer! .git will not be removed

..git.rm-protectionこのプログラムは、質問と回答を含むファイルを生成することによって機能します。

役に立ったことを願っています;)

関連情報