12

複数のユーザーがgithubまたはspringloopsのまったく同じリポジトリから作業できるようにする方法を知っている人はいますか?? 私たちがこれを試みた方法は、使用されている 4 台のマシンすべてと同じキー/ペアを共有することでしたが、うまくいきませんでした。1 つのアカウントは正常に機能しますが、プッシュ/プル/マージの側面全体を実際に調整する方法がわかりません。私たちが避けたかったのは、複数のブランチが進行していることです。

springloops の魅力は、誰かが変更を加えるたびに、その変更が自動的に開発サーバーに FTP 送信されることでした。その場合、開発から本番への移行を担当するのは 1 人だけです。

4

4 に答える 4

17

Gitは、各開発者のリポジトリで使用するように設計されています。各人のアカウントを作成し、マスターブランチのメンテナとして1人を指定します。他の誰もがマスターをフォークし、彼らは自分でやりたいことを何でもすることができます。彼らが何かを終えると、彼らはあなたにプルリクエストを送信し、あなたは彼らの変更をマスターブランチにプルすることができます。そうすれば、他の誰もが好きなだけマスターから引っ張ることができます(1日1回、1日2回など)。
複数のブランチを管理するのは難しいように聞こえるかもしれませんが、効果的にコミュニケーションをとる限り、問題になることはありません。開発者が機能を終了したら、プルリクエストを送信することが重要です。開発者はコミットにとどまるだけでなく、誰もそれらについて知りません。

開発者がマージリクエストを送信する前に従うべき適切なポリシーは、開発者にマスターからプルしてもらい、競合がないことを確認することです。

本当に1つのアカウントを使用したい場合は、同じキーを共有する必要はありません。Githubを使用すると、必要な数のキーをアップロードできます。ただし、SVNのように機能するものが必要な場合は、GitがSVNと同じワークフローに従うように設計されていないため、SVNを使用する必要があります。

于 2011-02-15T18:39:54.960 に答える
10

主なワークフローは 2 つあります。どちらも、各開発者が無料で適切な github アカウントをセットアップしていることを前提としています。

  1. 他の開発者を共同作業者としてメイン リポジトリに追加して、変更をプッシュできるようにします。
  2. 他の開発者がリポジトリをフォークし、プル リクエストを発行して変更を統合できるようにする

あなたのグループがソフトウェア製品を作成または保守している場合は、共同作業者が望ましいです。github にはプロジェクト用の 1 つのリポジトリがあり、各開発者は開発作業用のローカル リポジトリを持ちます。

フォークは、他のチームや開発者が独自のバージョンの製品を使用している場合に役立ちます。製品を強化するために変更を提供する方法 (プル リクエスト) を彼らに提供します。各フォークは、通常、プロジェクトの実行可能な個別のバリアントと見なされます。

フォークは、潜在的な協力者を「信頼するようになる」間、オープンソース環境でも役立ちます。彼らのプル リクエストを日常的に受け入れていることに気付いた場合は、彼らをコラボレーターに「昇格」させることができます。

ブランチは重要で非常に便利です。複数の開発者がプロ​​ジェクトの実験的機能または重要な拡張に協力する必要がある場合、リモート リポジトリでそれらなしで行うのは困難です。

于 2013-10-23T20:28:27.250 に答える
0

Git は非常に柔軟で、さまざまな方法でセットアップできます。しかし、人々は、git を使用する際に順守すべき良い規則について非常に強い意見を持っています。ただし、セットアップにはある程度の調整が必要ですが、特定の方法では多かれ少なかれ必要になる場合があります。検索する一般的な用語は、これに関する議論を見つけるための「git ワークフロー」です。

すべての git チェックアウトはリポジトリであることに注意してください。したがって、些細な意味で、すべての開発者は実際に独自のリポジトリを持っている必要があります。複数のキーまたは 1 つのキーを使用して、github に「共有」リポジトリを 1 つだけ持つことは十分に可能です。これには、前もってより多くの調整が必要です。開発の方向性について合意する必要があります。複数の「パブリック」リポジトリを使用すると、これを遅らせることができます。人々はお互いの作品を見て、祝福されたリポジトリにマージする必要があるかどうかを議論できます。

(1 つのリポジトリで複数のブランチを使用してこれを行うこともできます。また、パッチ セットを送信することでディスカッションを行うこともできます。どちらが簡単かは問題です。)

于 2011-02-15T20:56:50.263 に答える
-1

答えは次のとおりです。

chgrp -R <whatever group> gitrepo
chmod -R g+swX gitrepo

(発見: https://serverfault.com/a/27040/138239 )

于 2013-07-18T09:20:33.277 に答える