私は友人とアプリを開発しており、Githubを使用しています。
現在、次のアクションフローを使用していますが、正しく実行されているかどうかはわかりません。
例を見てみましょう。
最新のプロジェクトはGithubの下にあります組織X.組織Xからの個人Aと個人Bのフォークプロジェクト 人Aが変更を加え、Githubアカウントの分岐プロジェクトに変更をプッシュします。次に、A人は分岐プロジェクトから組織Xへのプル要求を作成し、変更をマージします。 ユーザーBは、まずGithubアカウントのフォークされたプロジェクトから組織xへのプルリクエストを作成し、最新の変更を取得する必要があります。次に、「git pull」を呼び出してアカウントから変更を取得し、それらをマージします。
各方向に一定のプル要求(組織X->分岐プロジェクト、分岐プロジェクト->組織X)Githubで多くのクリックを要求し、間違っていると感じます。私たちは何か間違ったことをしていると確信しており、より簡単なコラボレーションの方法があります。
また、MAC OS X用の優れた無料のマージツールはありますか?デフォルトのFileMergeには、各ファイルから何をマージするかを選択するオプションがありません。
回答:
回答№1は0あなたのワークフローはあなた次第ですが、私の意見ではプルリクエストは
- 大規模なチーム、または
- アクセス制御。
小規模な2人のチームでは、互いの「コミット」を信頼している場合、GitHubの同じリポジトリにプッシュすることには何も問題はありません。独自のフォークを持つ必要はなく、プルリクエストも不要です。
ただ維持するための戦略を持っていることを確認してください履歴をクリーンにします(フォークとプルリクエストでもこれが必要です)。 「クリーン」の定義はチームごとに異なりますが、人気のあるオプションの1つは、プッシュする前に常に最新のGitHub作業の上にローカル作業をリベースすることです。
git pull --rebase
git push
他のチームは嫌う rebase
強く避けてください。一緒に仕事をしたい方法や、履歴をどのように見せたいかを考えるのは良い考えです。一貫性を目指しましょう。