時間でコミットを比較する
どのリポジトリにも比較ビューがあり、リポジトリの状態を、ブランチ、タグ、コミット、期間などをまたいで比較できます。 比較ビューでは、プルリクエストビューと同じ diff ツールが使えます。
比較ビューに移動するには、リポジトリのパスの末尾に /compare
を付け足してください。
比較がいかに強力か、https://github.com/octocat/linguist/compare/master...octocat:master にある Linguist リポジトリのフォークの比較ページを見ればわかります。
どのリポジトリの比較ビューにも、base
と compare
という 2 つのドロップダウンメニューがあります。
base
は比較元、compare
は比較先と考えてください。 比較中、[Edit] をクリックすることにより、base
および compare
の内容をいつでも変更できます。
ブランチを比較する
比較の最も一般的な使い方は、新たなプルリクエストを開始する時などに行うブランチの比較です。 新しいプルリクエストを開始するときは常に、ブランチ比較ビューに移動します。
ブランチを比較するには、ページ上部の compare
ドロップダウンメニューで、ブランチの名前を選択してください。
2 つのブランチ間を比較した例については、こちらをクリックしてください。
タグを比較する
同様に、プロジェクトのリリースのために作成されたタグ間を比較することもできます。 タグ間の比較は、プロジェクトのバージョンが異なるリリースノートをまとめるための良い方法です。
compare
ドロップダウンメニューに、ブランチ名の代わりにタグの名前を入力してください。
2 つのタグ間を比較する例については、こちらをクリックしてください。
コミットを比較する
リポジトリまたはそのフォーク内の、2 つの任意のコミットを比較することも可能です。 コミット間の比較は、完全な SHA ハッシュまたは 7 文字の短縮コードを入力して実行します。
2 つのコミット間を比較した例については、こちらをクリックしてください。
プルリクエストのスリードット diff 比較でツードット diff 比較をエミュレートするには、ベースブランチをワーキングブランチにマージして、最新の共通の先祖を更新します。
フォークを比較する
ベースリポジトリと、フォークした任意のリポジトリを比較できます。 これは、ユーザがプロジェクトにプルリクエストを実行したときに表示されるビューです。
別のリポジトリにあるブランチを比較するには、ブランチの名前の前にユーザ名を付けてください。 たとえば、base
に octocat:master
を、compare
に octo-org:master
を指定することで、octocat
と octo-org
のそれぞれが所有するリポジトリの master
ブランチを比較できます。
2 つのリポジトリ間を比較した例については、こちらをクリックしてください。
時間でコミットを比較する
1 か月、2 週間といった任意の期間で、比較を作成できます。 期間を定義するには、ブランチの名前の後に @
を付け、期間を { }
に挟んで入力します。 たとえば、base
ドロップダウンメニューに master@{2weeks}
と入力すると、現在の master
ブランチを 2 週間前の master
ブランチと比較します。
2 つの時点を比較した例については、こちらをクリックしてください。
特定の日付で比較することも可能です。 日付は MM-DD-YY (月 - 日 - 年) のフォーマットに従う必要があります。
同じブランチで、2016-07-22 と、その数日後を比較した例については、こちらをクリックしてください。
コミットを比較する
Git では、「1 つ前のコミット」を意味するショートカットとして、"^
" を使います。
この記号を使って、1 つのコミットやブランチを、すぐ前のものと比較できます。 たとえば、96d29b7^^^^^
は、5 つの ^
マークが付いているので、96d29b7
の 5 つ前のコミットを示します。 base
ブランチに 96d29b7^^^^^
と入力し、compare
ブランチに 96d29b7
と入力すると、96d29b7
の 5 つ前のコミットと 96d29b7
を比較します。
^
記号を使った比較の例については、こちらをクリックしてください。