14

製品の最初のリリース後、メイン開発と機能開発のために別のブランチに切り替えます。特定のユーザー (ロールまたはユーザー名に基づく) でない限り、(偶然または意図的に) 削除されないようにブランチを作成する方法はありますか?

ローカルの gitlab マシンにサンプルの git リポジトリを作成しようとして、ウェブサイトのオプションからブランチの 1 つを保護しましたが、git push origin :branch_name. 前もって感謝します!

このソリューションは github.com で動作しますか?

4

5 に答える 5

8

これに取り組むには多くの方法があります。

  1. サンド ボックスである別のリポジトリを作成し、マスター リポジトリへの読み取り専用アクセスを許可します。誤って削除した場合、マスター リポジトリからブランチを取得できます。これは、ローカルの開発リポジトリとは別に、リポジトリに github のみを使用していることを前提としています。
  2. 特定のユーザーでない限り、ブランチの削除を許可しないフックをリポジトリにセットアップします。サーバー上で任意のコードを実行することを許可しないため、github ではこれを行うことはできません。代わりにローカル リポジトリを取得する場合は、これを行うことができます。
  3. 権限のあるブランチを管理するために、ローカルの gitolite インストールをセットアップします。
于 2012-07-09T18:57:40.277 に答える
4

リポジトリを保護する pre-receive フックを追加し、ベア リポジトリの設定ファイルに次のようなものを追加することで、サーバーでブランチ権限を使用できます。

[hooks]
        allowedtomerge = user1,user2,user3
        protectedbranches = master
于 2012-11-09T02:44:45.650 に答える