MENGGUNAKAN ALAT VISUAL DIFF
Jawaban Default (pada baris perintah)
Jawaban teratas di sini dengan benar menunjukkan cara melihat perubahan yang di-cache / dipentaskan di Index:
$ git diff --cached
atau $ git diff --stagedyang merupakan alias.
Meluncurkan Alat Visual Diff
Jawaban default akan memuntahkan perubahan diff pada bash git (yaitu pada baris perintah atau di konsol). Bagi mereka yang lebih suka representasi visual dari perbedaan file bertahap, ada skrip yang tersedia di dalam git yang meluncurkan alat diff visual untuk setiap file yang dilihat alih-alih menunjukkannya pada baris perintah, yang disebut difftool:
$ git difftool --staged
Ini akan melakukan hal yang sama seperti ini git diff --staged, kecuali setiap kali alat diff dijalankan (yaitu setiap kali file diproses oleh diff), ia akan meluncurkan alat visual diff standar (di lingkungan saya, ini kdiff3 ).
Setelah alat diluncurkan, skrip git diff akan berhenti hingga alat visual diff Anda ditutup. Oleh karena itu, Anda harus menutup setiap file untuk melihat yang berikutnya.
Anda Selalu Dapat Menggunakan difftooldi tempatdiff dalam perintah git
Untuk semua kebutuhan visual Anda yang berbeda, git difftoolakan bekerja di tempat apa pungit diff perintah , termasuk semua opsi.
Misalnya, agar peluncuran alat visual berbeda tanpa menanyakan apakah akan melakukannya untuk setiap file, tambahkan -yopsi (saya pikir biasanya Anda menginginkan ini !!):
$ git difftool -y --staged
Dalam hal ini ia akan menarik setiap file dalam alat visual diff, satu per satu, membuka yang berikutnya setelah alat ditutup.
Atau untuk melihat perbedaan dari file tertentu yang dipentaskan di Index:
$ git difftool -y --staged <<relative path/filename>>
Untuk semua opsi, lihat halaman manual:
$ git difftool --help
Menyiapkan Alat Visual Git
Untuk menggunakan alat visual git selain dari yang standar, gunakan -t <tool>opsi:
$ git difftool -t <tool> <<other args>>
Atau, lihat halaman manual difftool untuk cara mengkonfigurasi git untuk menggunakan alat visual diff standar yang berbeda.
Contoh .gitconfig entri untuk vscode sebagai alat diff / merge
Bagian dari menyiapkan difftool melibatkan mengubah .gitconfig file, baik melalui perintah git yang mengubahnya di belakang layar, atau mengeditnya secara langsung.
Anda dapat menemukannya .gitconfigdi direktori home Anda, seperti ~di Unix atau normalc:\users\<username> di Windows).
Atau, Anda dapat membuka pengguna .gitconfigdengan editor Git default Andagit config -e --global .
Berikut adalah contoh entri dalam pengguna global saya .gitconfiguntuk Kode VS baik sebagai alat berbeda dan alat gabungan:
[diff]
tool = vscode
guitool = vscode
[merge]
tool = vscode
guitool = vscode
[mergetool]
prompt = true
[difftool "vscode"]
cmd = code --wait --diff \"$LOCAL\" \"$REMOTE\"
path = c:/apps/vscode/code.exe
[mergetool "vscode"]
cmd = code --wait \"$MERGED\"
path = c:/apps/vscode/code.exe
git status -vbekerja juga. Lihat jawaban saya di bawah ini