の違いを教えてダブル-ドット".."のトリプル-写"..."でGitコミットの範囲?

StackOverflow https://stackoverflow.com/questions/462974

  •  19-08-2019
  •  | 
  •  

質問

一部のGitコマンドにコミットの範囲および有効な構文は、別々の二つのコミット名とドット .., は、別の書式は三つのドット ....

の違いを教えてくる。

役に立ちましたか?

解決

それはあなたがlogコマンドまたはdiffコマンドを使用しているかどうかによって異なります。 man git-rev-parse場合には、それはman git-diffマニュアルにあります:

  

除外するには、接頭辞^表記が使用され、コミットから到達可能なコミット。例えば。 ^ R1 R2手段は、R2から到達可能なコミットが、R1から到達可能なものを排除します。

     

この設定操作はそれほど頻繁に表示されます   それのための速記があること。いつ   次の構文に従って名前が付けR1とR2は(で説明した2つのコミットをしてい   あなたは、)上記の修正をすることができます指定します   到達可能なコミットを求めます   あるものを除くR2から   「^ R1 R2」と、それによってR1から到達可能   "r1..r2" のように書くことができます。

     

同様の表記 "R1 ... R2" であります   R1のと呼ばれる対称差と   R2および「R1、R2の--notとして定義されています   $(Gitのマージベース--all R1 R2)」。それはあります   あるコミットのセット   R1またはR2のいずれか一方から到達可能   両方ではないから。

基本的にあなたが両方ではないでは、二つのブランチのいずれかにあるすべてのコミットを得るだろうことを意味します。

..場合、それはgit-diffマニュアルにあります:

  git diff [--options] <commit>...<commit> [--] [<path>...]

      This form is to view the changes on the branch containing and up to
      the second <commit>, starting at a common ancestor of both
      <commit>. "git diff A...B" is equivalent to "git diff
      $(git-merge-base A B) B". You can omit any one of <commit>, which
      has the same effect as using HEAD instead.

どのビットファジーです。基本的には、それは別のブランチに比べて、そのブランチで唯一の違いを示し意味:それは最後の一般的なものは、あなたがそれを与えた最初のcommittishでコミットを探し、その後、それに二committishをdiffを。それだけでこのブランチの変更の通知を受けずに、このブランチに比べて、その枝で作られて変更を確認するための簡単な方法です。

git diff A B幾分簡単である:<=>場合、それは<=>同じだとちょうど<=>場合B.に対してdiffを、それがBにあるすべてのコミットを示すがありませんAインチ

他のヒント

をコミットの範囲とGitログ

きいコミットの範囲のような .....git log, は、これらの差額については、支店、

git log A..B

表示します すべての犯として使用された東京オリンピックがない, な

git log A...B

表示します を犯したが、Bさんいるし、犯として使用された東京オリンピックがない、またはその でフィルターの為の両AおよびB株ることのみを示す為のう .

可視化Venn図解&コミット木

こちらは視覚的に表現 git log A..B.の犯店億含まれていないが存在するかによって返されるコミットの範囲、および、赤色でハイライトされ、ベン図(Venn diagram)、丸のチュートリアルでは、レーザのコミット木:

 "git log A..B" diagramTree 1

これらの図 git log A...B.ここに約束する 共有 によるいずれのプログラムについてもいないによって返されるコマンド:

 "git log A...B" diagramTree 2

のトリプルル-ドットコミット範囲 ... 有用な

しないように注意してくださいトリプルル-ドットコミット範囲 ... りますが、ビームサイズが大きlogコマンドを使用 --left-right オプションを見る為に所属する支店:

$ git log --oneline --decorate --left-right --graph master...origin/master
< 1794bee (HEAD, master) Derp some more
> 6e6ce69 (origin/master, origin/HEAD) Add hello.txt

上記出力してください犯に所属している master は頭 <, が犯に所属している origin/master は頭 >.

をコミットの範囲とGit Diff

いつかかばんはいかがでしょうか、自分の説明のためにどのようにコミットの範囲の仕事 git diff, が、現するためにチェック の違いを教えてダブル-ドット".."のトリプル-写"..."でGit diffコミットの範囲?.

参照

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top