2016-04-07 12 views
5

私の会社では、featureブランチのコミットを縮めてdevelopにマージするように開発者に依頼しています。一度押しつぶされると、開発者はGitHubにプッシュし、GitHubにログインしてプルリクエストを作成します。なぜGitHubで結合されたプル要求が重複コミットを作成するのですか?

プル要求がマージされたとき、私たちはdevelopブランチの歴史の中でコミット見終わる:

  1. Aからコミット押しつぶさ、単一
  2. 「マージされたプルリクエストを」と言ってコミットfeature支店

どうしてですか?そして、どうすればそれを避けることができますか?私は同様のQ&A about avoiding "merge commit hell"を読んだが、私の目標は、GitHub UIを使用してプルリクエストを作成、追跡、および議論することです。

+0

私は2番目のマージがコミットされてコミットと思う:GitHubには今、自分のWeb UI内squash and mergerebase and merge機能を追加しました。これを回避するには、手動でマージしてGitHubにプッシュします。 GitHubにはマージコミットを却下する機能はありません。 [こちら](https://stackoverflow.com/questions/16358418/how-to-avoid-merge-commit-hell-on-github-bitbucket)をチェックしてください。 – xuhdev

答えて

7

表示されているコミットは、マージコミットです。一般的に、これらは、早送りではないマージを行うたびにgitによって自動的に作成されますが、強制的に強制的に作成することもできます。これは、マージボタンを使用するときにGitHubが実行する処理です。

マージコミットが必要ない場合は、マージボタンを使用する代わりに、コミットをマスターにチェリーする必要があります。 GitHubウェブUI内でこれを行う方法はありません。

編集:

enter image description here

+0

GitHubでマージコミットを避ける方法があるようです...それは本当にうんざりです。私は一般的にGitHubのプルリクエストUIが大好きですが、これらのマージリクエストは迷惑で、間違いなく混乱しています。これは、diffが正確に同じ差分を示しています。 –

+1

残念ながらGitHubが提供していない[履歴のツリービュー](http://stackoverflow.com/q/5382255/120999)を見ると、マージコミットがもっと意味を成しています。私はGitHubが大好きですが、年が経つにつれて、何かをしようとしているときに必然的にもっと混乱してしまうので、ターミナル内の 'git'ツールを使って、かなりの時間をかけています。少し基本的な操作を超えて。 –

関連する問題