2016-03-25 20 views
3

は、書き込みと読み出しのためのGitのブランチをロックするが方法ですロック? ブランチへの書き込みやブランチからのクローン作成はできませんが、ビルドエンジニアは一人だけです。ここではGitのブランチ

はシナリオです:

コードはGitのリポジトリにプッシュされてきたとしたら、開発ブランチが行われました。これで、開発ブランチからクローンを作成し、コードを開発ブランチに戻すことができるようになりました。

一人だけ - エンジニアを構築するには、masterブランチへのアクセス権を持っている必要があります。また

、Gitリポジトリと連携することができます良いGUIツールはありますか?現在SourceTreeを使用していますが、ツリーを表示しコミットするのは醜いです。

ありがとうございます。読み取りアクセスを意味

+0

一般的に、Gitサーバー(GithubやStashなど)では、特定のブランチへのプッシュを防ぐことができます。私は、特定の支店から防ぐ*理由を見ることができません。 –

+0

可能性のある重複した[Gitのブランチへのアクセスを制限する方法はありますか?](http://stackoverflow.com/questions/8781240/a-way-to-restrict-git-branch-access) – Frxstrem

+0

@OliverCharlesworth、定期的な開発はする必要がありますので、開発ブランチから行っています。通常の開発者はマスターブランチにアクセスできません。 Guiツールはどうですか?何か良いことがありますか? – Igor

答えて

3

GitはあなたがGitのリポジトリのクローンを作成することができれば、あなたは(そのすべての支店で)それを完全に複製することができることを意味リポジトリレベルで動作します

はレポレベル以下に強制することはできません(のためのブランチ)。
すべてのレポは、プライベート行うことができ、それは、(Apacheサーバや、ユーザーの認証と認可に連結されたSSHデーモンのような)Gitのレポの前でのアクセスを管理するより、リスナーのgitからの機能ではありません。まだへのアクセスを持っているでしょう

マスターのための
  • 1 devに関する
  • 1(通常はマスターのフォーク)

開発者:

は、2つのリポジトリが必要になり、完全な読み取り保護を達成するために、しかし、元に戻ってきたレポをマスターしてください。
完全な隔離のためには、最初のリポジトリをプライベートなものにする必要があり、2番目のものはもはやフォークではありません。

しかし、より一般的に有する(読み)マスターへのアクセスが悪い習慣ではありません。development分岐はないと述べたのリベースを意味している限り、developmentブランチへの非前方プッシュとしてブロックされている

  • 可能性:任意の開発は、そのブランチ上に行く(やないmaster
  • 開発者はまだ彼らのコミットをマスターするために比較することができ、および/またはチェリーピックまたは、彼らはいくつかのホットを含める必要があるのは、マスターのいくつかは開発ブランチにコミットマージ-fixはマスターで実行されます(次のマージ前)
+0

git自体はリポジトリへのアクセスをまったく否定しませんが、以下の@jthillはより正確です。アクセスを拒否するリポジトリの前にリスナーを置くことができますが、git自体は 'receive-pack' /' upload-pack'があなたが聞いたものをうれしく受け取ったり転送したりするバージョンファイルマネージャです。私はそれに応じて答えを編集しました。 – VonC