2015-10-15 5 views
5

最近私はSVNからgitに移動し、gitのやり方を学びました。 私のリポジトリの2つのブランチの間で変更されたファイルを見つける必要があります。私はそれに次のコマンドを使用します。git diffはあいまいな引数エラーを返します

git diff branch_2..branch_1 

私はfollwingエラーを取得する:あなたは、単にやっている場合は

git branch -a 
* branch_1 
master/origin 
remotes/origin/HEAD -> origin/master 
remotes/origin/branch_2 
remotes/origin/branch_1 
+0

を行うことができますこれはばかげた質問かもしれませんが、あなたはあなたの枝がそのリストにある-a' 'Gitのブランチをすれば? – idjaw

+0

ええ、そうです。 – am28

+0

あなたのリストにある2つのブランチの内容を貼り付けることはできますか? – idjaw

答えて

11

fatal: ambiguous argument 'branch_2..branch_1': unknown revision or path not in the working tree. 
Use '--' to separate paths from revisions, like this: 
'git <command> [<revision>...] -- [<file>...]' 

gitのブランチには、以下のO/Pを与えます:

git diff branch2..branch1 

あなたのgitブランチリストにリストされているように、あなたの 'remotes'は "origin"として指定されています。これが実際に意味することは、あなたのリモートにブランチがあることですが、実際にローカルにチェックアウトされていないことです。

ここには2つのオプションがあります。これらを試して、それがどうなるか教えてください。起源/

git diff origin/branch2..branch1 

を使用して

Diffのあなたの差分を実行するためにローカルでこれらのブランチをチェックアウトし、多分あなたのワークステーション上でそれらに仕事をしたい場合:提供支店リストに基づいて

。さらに、次の形式で差分をサポートしてください:

git diff branch2..branch1 

これらのブランチを実際にチェックアウトして、リモートからローカルブランチとして設定する必要があります。単純にこれを実行します。

git checkout branch2 

を次にあなたが

git diff branch2..branch1 
+2

は完璧に機能しました! – am28

関連する問題