Gitによると、「私たち」は誰で、「彼ら」は誰ですか?


157

Gitのリベース後、およびその他の状況では、レポートで削除されたとマークされたファイルがいくつか見つかりますgit status。Gitによると、私たちは誰ですか?なぜですか?

それは私がこの枝に座ってそれが私のために働いていることを指しているのですか?それとも、それ自体と私がリベースしているブランチで作業している人々を指しているのですか?


5
不思議なことに、「彼らによって削除された」とは、リベースしているブランチ上のファイルを削除したことを意味し、「私たちによって削除された」とは、他の人々がそれを削除したことを意味します。git merge反対のメッセージを出します。
Fred Foo

回答:


173

マージするときは、マージusするブランチではなく、マージ先のブランチを指しますthem

あなたはときにリベースus上流分岐を意味し、そしてthemあなたが動き回っている枝です。リベースの場合、それは少し直観に反しています。

その理由は、Gitがリベースに同じマージエンジンを使用しており、実際には上流のブランチにチェリーを選択しているためです。us=へ、them=から。


54
リベースはマージ機構を使用し、「ours」ブランチが上流ブランチであり、「theirs」ブランチがリベースされるブランチであるため、実装の観点からは理にかなっています。しかし、「非常に役に立たない」というのは、丁寧な言い方に思えるかもしれません。「us / ours」と「them / theirs」以外の単語でラベル付けされたブランチを使用したほうがいいです。たとえば、ブランチ名で「おそらくマスターで削除され、機能が変更されました」のようになります。
torek 14年

3
私はリベース中にチェックアウト--theirsをする--oursときはいつも混乱しがちですが、直感に反しています。私は彼らがいつかこれを修正することを望みます。
iosdude

中にコミットを並べ替えたり、押しつぶしたりする場合など、1つのブランチのみが関係している場合はrebaseどうですか?
ジャスティンジョンソン

us:新しい書き換えられたブランチ(into)、:them元のブランチ(from)。
SzG 2016

13
us通常の英語の単語「us」の代わりに、「[u] p [s] tream」のニーモニックと考えるだけで役立つ場合があります。
小次郎
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.