2012-03-31 11 views
0

svnとCornerstoneではこれは簡単ですが、Gitやsourcetree(Mac sourcetreeappのための優れた視覚的なgitツール)を使ってやり方を見つけることができないようです。GitとSVNタグとの比較方法

私はいくつかのバージョンが離れている同じブランチ上の2つのコミットを比較する必要があります。私はコーナーストーンで任意のバージョンやタグを選んで自分の作業ディレクトリと比較することができますが、私はsourcetreeやgit diffとfilemerge(opendiff)を使ってこれを行う方法を見つけることができません。

など。

working dir HEAD 
change three 
change two 
change one Tag: works 

私はHEADworksを比較する必要がありますが、私はこれを行うための方法を見つけるように見えることはできません。私はSVNでできるように、worksからファイルをチェックアウトすることはできません、それはそのバージョンでリポジトリ全体をプルし、私の作業ディレクトリを拭きたいです。私がファイルを横に並べることができれば、私はopendiffや他のツールを実行できます。

私には何が欠けていますか?

+0

これは非常に多くの事のように、睡眠は答えを保持していました。 SourceTreeでは、2つの異なるタグをCmd-クリックすると、差異パネルが自動的に2つのバージョンに対する累積デルタを表示します。それは私の目の前にあって、私はそれを見ませんでした。 – user445658

答えて

0

あなたはそうのようなタグをdiffをすることができます

git diff tag1 tag2 
2
  1. あなたはgit diff <commit hash1> <commit hash2>で任意の二つのコミットを比較することができます。
  2. あなたはまた、git checkout <commit hash> -- file/pathで特定のコミットからファイルをチェックアウトすることができgit diff <commit hash1> <commit hash2> -- file/path
  3. で任意の二つのコミット中に1つのファイルを比較することができます。

注:あなたが最初のコミットを選択し任意のタグ、支店など

+0

私はファイル・マージ(opendiff)にインポートできない巨大なテキスト・ファイル・ジャンパーを生成します。私はこれらのファイルを並べて見ることができるようにしたい。 2つのファイルはエクスポートされていないので、私の視覚的な差分ツールはgit diffの出力をどうするか分かりません。 – user445658

+0

正しい方向に向けるべきリンクがいくつかあります。 .github.com/329690)[リンク2](http://stackoverflow.com/questions/255202/how-do-i-view-git-diff-output-with-visual-diff-program) – Andy

0

実行gitk --all

<commit hash>を置き換えることができます。

右二

それとも、gitのdiffを持つコマンドラインであることを行うことができます「を選択し、このデフ」コミットして[選択]をクリックします。

+0

私のMacに 'gitk'がインストールされているとは思えませんでした。これは動作します。コーナーストーンほど素晴らしいものではありませんが、それは仕事を完了させるでしょう。ありがとうございました。 – user445658

関連する問題