it-swarm-id.com

Lihat file di cabang Git yang berbeda tanpa mengubah cabang

Apakah mungkin untuk membuka file di cabang git tanpa memeriksa cabang itu? Bagaimana?

Pada dasarnya saya ingin dapat membuka file di halaman github saya cabang tanpa berpindah cabang sepanjang waktu. Saya tidak ingin memodifikasinya, hanya ingin melihatnya.

541
Schneems

Ini seharusnya bekerja:

git show branch:file

Di mana cabang dapat berupa ref (cabang, tag, KEPALA, ...) dan file adalah path lengkap file. Untuk mengekspornya bisa Anda gunakan

git show branch:file > exported_file

Anda juga harus melihat jawaban VonC untuk beberapa pertanyaan terkait:

UPDATE 2015-01-19:

Saat ini Anda dapat menggunakan jalur relatif dengan git show a1b35:./file.txt.

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

anda juga dapat melakukan banyak file dan menggabungkannya:

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

Anda harus memberikan path lengkap ke file.

Jika Anda ingin mendapatkan file di direktori lokal (kembalikan hanya satu file) Anda dapat checkout:

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

Cara sederhana dan ramah bagi pemula untuk mencari file: git gui browser <branch> yang memungkinkan Anda menjelajahi konten file apa pun.

Itu juga ada di menu File git gui. Sebagian besar pembungkus GUI -lebih canggih lainnya (Qgit, Egit, dll.) Menawarkan penelusuran/pembukaan file juga.

35
inger

Jika Anda menggunakan Emacs, Anda dapat mengetik C-x v ~ untuk melihat revisi berbeda dari file yang sedang Anda edit (tag, cabang, dan hash semua pekerjaan).

18
legoscia

Tambahkan berikut ini ke file ~/.gitconfig Anda

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

Dan kemudian coba ini

git cat BRANCHNAME FILEPATH

Secara pribadi saya lebih suka parameter terpisah tanpa titik dua. Mengapa? Pilihan ini mencerminkan parameter dari perintah checkout, yang cenderung saya gunakan agak sering dan saya merasa lebih mudah diingat daripada parameter yang dipisahkan oleh titik dua bizarro dari perintah show perintah.

1
akuhn