15

これが私の最初の使用であり、さまざまな記事や Stack Overflow の質問を読んだにもかかわらず、私のプロセスが正しいかどうかわからないため、git ワークフローに関するフィードバックをお願いします。これが私の現在のワークフローです (すべての git インタラクションに Github for Windows アプリケーションを使用していることに注意してください)。

  1. 次に実装する機能を決定します。
  2. 機能を適切に説明する名前でブランチを作成します。これを行うには、Github for Windows のブランチ ボタンをクリックし、新しい名前を入力します。
  3. コードを書きます。
  4. これらの変更を新しいブランチにコミットします。
  5. さらにコードを書きます。
  6. これらの変更を新しいブランチにコミットします。
  7. 機能の実装が完了したので、変更を master ブランチにマージしたいと考えています。そこで、ブランチの見出しの下にある「管理」ボタンをクリックします。
  8. 新しいブランチを master ブランチにマージします。
  9. 新しいブランチを削除します。

ステップ 7 までのプロセスには非常に満足していますが、その時点で少し混乱しています。私の混乱は、コマンド ラインを使用するのではなく、Github for Windows アプリケーションを使用しようとしていることにあると思います。アプリケーションは物事を簡単にするように見えますが、言及されているいくつかのコマンド/命令と、アプリケーションで実行するアクションとの間には、私の理解に少しずれがあります。

具体的な質問をいくつかさせてください。

  1. 私のワークフローは実際に正しいですか? そうでない場合、何が問題で、どうすれば改善できますか?
  2. 変更を新しいブランチに「公開」する必要がありますか? 私の理解では、これはgit pushコマンドラインで行うのと同じです。本当?もしそうなら、機能の実装が完了したとき、または適切な状態になったときにのみ、それを行いたいと思いますか?
  3. ブランチをマスター ブランチにマージしたときにブランチを削除する必要がありますか、それとも永久に残しておく必要がありますか?
  4. マージが完了したら、マスター ブランチを公開する必要がありますか?それとも暗黙的ですか?
  5. マージを実行できず、次のエラー メッセージが表示されることがあります。

    マージできません

    「test」を「master」にマージできませんでした。シェルを開いて、このレポの状態をデバッグする必要がある場合があります。

これが以前に発生したとき、マスター ブランチに変更し、新しいブランチをマスター ブランチにマージすることができましたが、機能しなくなりました。どのブランチにいても、2 つのブランチをマージできません。両方とも同期しており、テスト ブランチからすべての変更を公開しました。ブランチをマージできない理由を調べるには、シェルに何を入力すればよいですか?

参考までに、これらは私のプロセスを促す主なリンクです。

  1. Gitub でのワークフローに関する Scott Chacon
  2. ローカル リポジトリ上の 1 人の開発者の Git ワークフロー
  3. 単一ユーザーの Git ワークフロー
4

1 に答える 1

4

あなたが説明していることは、同じコードベースの複数の開発者にとっても非常にうまく機能する一般的な分岐ワークフローのように聞こえます。これは、特定の手順を自動化するためのgitコマンドラインの拡張であるgitflowによってほぼ完全にカバーされています。チェックする価値があります。

私はgit用のUIツールの大ファンではありません。私はほとんどの場合コマンドラインを使用しています。そのため、GitHubforWindowsの経験はありません。しかし、あなたのマージはもはや早送りではないため、あなたの問題が発生するに違いありません。これには、ツールでカバーされていない(afaik)手動のマージ手順が必要になります。

ブランチをアップストリームにマージした後、ブランチを維持する強い理由はありません。ただし、1つは、特定の機能にどのコミットが入ったかを追跡することです。ブランチを保持することにした場合は、ブランチを公開することをお勧めします。ローカルマシンにあるコードに依存していません。ブランチを維持することは、ちなみにリポジトリをそれほど大きくすることはありませんが、視界を汚染します。ほとんどの場合、コミットはアップストリームブランチに存在します。

にマージした後、マスターブランチを公開(プッシュ)する必要があります。

gitコマンドラインツールに慣れるために、GitHubの人たちによるGitとGitHubの紹介から始めて、詳細についてはリンクリファレンスをたどることをお勧めします。

お役に立てば幸い

于 2012-07-29T12:42:05.663 に答える