SVN制御を達成し、削除の権限はプロンプトを注釈を付けなければなりません

需要:SVNプロジェクトファイルの平均的なユーザーが誤って削除した場合、回復するSVNができるが、しかし、あなたはより多くのファイルを削除した場合、コメントの内容は、必要性の回復は、ローカルの1を維持し、サーバーにアップロードする際に、シンプルで、非常に面倒になり、また、その後、どのようにSVNでそれをプロジェクトファイルを削除するには、通常のユーザーを禁止することができ、コードの競合のバージョンの問題を提出することができますか?

まず、リポジトリのhooksディレクトリ、バックアップの権限を追加し、名前の変更、スクリプトファイルを事前にコミットするために、接尾辞を削除する前commit.tmpl必要としているファイルを見つけます。この文書がなければ、新しいスクリプトは、事前にコミット。

CP事前commit.tmpl前commit.tmplバックアップ

 

第二に、ファイルの内容が事前にコミット変更

Vimの事前コミット

 

 

次のように改正:

 

 

68から81またはすべての行をコメントアウトし、次のコードを追加します。

 

 

 

 

 

 

1 REPOS = " $ 1 " 
2 TXN = " $ 2 " 
3つの 
4  #は、ログメッセージは、いくつかのテキストが含まれていることを確認してください。
5 SVNLOOK =は/ usr / binに/ svnlook
 6  
7  もし -t [-z `$ SVNLOOKログ" $ TXN "  " $のREPOS " | grepの " [-ZA-Z0-9] " `]。その後、
8          エコー " 请输入注释!" >&

 
TXN $ REPOS` $トン
 12 ADMINLIST = ここADMIN、zhangsan#は、ユーザーがカンマで区切っ削除する権限、持っている
 13の IF [ " ` $エコーのADMINLIST | grepの-w $ USER | WC -l` " -eq 0 ]; その後、
14          IF [ `$のsvnlookは$ TXN $ REPOS -t変更| grepを " ^ D " | WC -l` -gt 0 ]; その後、
15は                 エコー " !削除するには、管理者に連絡し、削除する権限がありません" >&2 
16                  番出口1 
。17          Fiが
18である Fiが
19  
20 #すべてのチェックが渡され、そのコミットが可能。
21出口0

 

 

詳細:

 

ADMINLISTは=、zhangsanは、他の人がある場合にのみ、管理者とzhangsan 2人のユーザーが、ファイルを削除する権限があり、単純にカンマを入力し、当然のことながら、これらのユーザー名は、CONFにpasswdファイルに設定する必要があります管理者を意味し

 

 

 

第三に、権限を実行するためのフックスクリプトは再起動することなく、事前にコミット755 chmodコマンド

 

 

 

第四に、テスト

 

 

 

コメントを入力しませんでした。

 

 

削除

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/opsprobe/p/11433869.html