web-dev-qa-db-ja.com

ブランチを変更せずに別のGitブランチにあるファイルを表示する

ブランチをチェックアウトせずにgitブランチでファイルを開くことは可能ですか?どうやって?

基本的に私はいつもブランチを切り替えることなく私の githubページ ブランチでファイルを開くことができるようにしたいです。私はそれを変更したくない、ただ見たいだけです。

541
Schneems

これはうまくいくはずです。

git show branch:file

branchは任意のref(branch、tag、HEAD、...)で、fileはファイルのフルパスです。 。それをエクスポートするにはあなたが使用することができます

git show branch:file > exported_file

また、いくつかの関連する質問に対する VonC の回答も調べてください。

アップデート2015-01-19:

今日ではgit show a1b35:./file.txtで相対パスを使うことができます。

755
Scolytus
git show somebranch:path/to/your/file

複数のファイルを作成してそれらを連結することもできます。

git show branchA~10:fileA branchB^^:fileB

ファイルへのフルパスを入力する必要があります。

あなたがローカルディレクトリにファイルを取得したい場合(ただ一つのファイルを元に戻す)あなたはチェックアウトすることができます:

git checkout somebranch^^^ -- path/to/file
45
Adam Dymitruk

ファイルを覗くための簡単で初心者にやさしい方法:git gui browser <branch>これはあなたがどんなファイルの内容でも探せるようにします。

git guiのFileメニューにもあります。他のほとんどの(より高度な)GUIラッパー(Qgit、Egitなど)では、ファイルの参照/オープンもできます。

35
inger

Emacsを使用している場合は、現在編集中のファイルの別のリビジョンを表示するためにC-x v ~を入力できます(タグ、ブランチ、ハッシュはすべて機能します)。

18
legoscia

以下を~/.gitconfigファイルに追加してください。

[alias]
  cat = "!git show \"$1:$2\" #"

そしてこれを試してみてください

git cat BRANCHNAME FILEPATH

個人的にはコロンなしで別々のパラメータを好む。どうして?この選択は、私がかなり頻繁に使用する傾向があるcheckoutコマンドのパラメーターを反映しており、showコマンドのコロンで区切られたbizarroパラメーターよりも覚えやすいです。

1
akuhn