Rumah > alat pembangunan > git > teks badan

Penggunaan git diff yang betul

WBOY
Lepaskan: 2023-05-20 15:39:39
asal
2630 orang telah melayarinya

Sebagai pengaturcara, Git hampir merupakan alat yang sangat diperlukan untuk kami. Sebagai sistem kawalan versi, Git membantu kami mengurus pengubahsuaian fail dan pengesanan versi Terutama apabila membangunkan projek perisian berskala besar, Git boleh membantu mengurus penggabungan kod antara ahli pasukan dan mengelakkan masalah seperti konflik dan kehilangan kod.

Dalam Git, arahan diff ialah salah satu alatan penting yang membantu kami membandingkan perbezaan antara fail dan versi, dan sering digunakan oleh pengaturcara. Walau bagaimanapun, walaupun arahan diff kelihatan mudah, masih terdapat banyak butiran yang perlu diberi perhatian dalam penggunaan khusus Artikel ini akan memperkenalkan penggunaan yang betul bagi arahan git diff secara terperinci.

  1. Sintaks asas

Sintaks asas Git diff adalah seperti berikut:

git diff [<options>] [<commit>] [--] [<path> ...]
Salin selepas log masuk

Antaranya, pilihan adalah pilihan dan komit adalah salah satu daripada dua versi yang hendak dibandingkan , lalai adalah HEAD, laluan adalah laluan yang ditentukan, pilihan.

Nota: ‘--’ ialah pembatas, dan laluan berikut mewakili fail atau folder.

Sebagai contoh, untuk membandingkan perbezaan antara ruang kerja dan versi semasa:

git diff
Salin selepas log masuk

Untuk membandingkan perbezaan dalam fail antara ruang kerja dan versi semasa:

git diff file1.txt
Salin selepas log masuk

Bandingkan yang dinyatakan Perbezaan antara dua komit:

git diff abc123 def456
Salin selepas log masuk
  1. Penjelasan terperinci tentang parameter

Terdapat banyak parameter pilihan untuk perintah git diff, berikut adalah beberapa yang lebih penting:

  • --cache: Bandingkan perbezaan antara kawasan pementasan dan versi terkini cawangan semasa. Contohnya:
git diff --cached
Salin selepas log masuk
  • --berperingkat: Sama seperti pilihan --cached. adalah satu lagi penggunaan pilihan di atas.
git diff --staged
Salin selepas log masuk
  • --shortstat: Keluarkan maklumat statistik ringkas, termasuk bilangan fail yang diubah suai, bilangan baris yang disisipkan, bilangan baris yang dipadamkan, dsb. Contohnya:
git diff --shortstat
Salin selepas log masuk

Output:

2 files changed, 10 insertions(+), 5 deletions(-)
Salin selepas log masuk
  • -w atau --ignore-all-space: Abaikan perbezaan dalam ruang dan kekunci tab. Jika pilihan -w digunakan secara bersendirian, perbezaan antara fail yang disimpan dalam ruang kerja semasa dan cawangan semasa akan dibandingkan jika digunakan dengan parameter lain, perbezaan antara versi yang ditentukan akan dibandingkan. Contohnya:
# 比较工作区和当前版本的差异,忽略空格和tab键的变化
git diff -w

# 比较某两个提交之间的差异,忽略空格和tab键的变化
git diff -w abc123 def456
Salin selepas log masuk
  • --nama-sahaja: Hanya paparkan nama fail fail yang diubah, tanpa memaparkan kandungan perbezaan khusus. Contohnya:
git diff --name-only
Salin selepas log masuk

Output:

file1.txt
file2.txt
Salin selepas log masuk
  • --name-status: Paparkan nama fail bagi fail yang diubah dan jenis perubahan (iaitu pengubahsuaian, penambahan, pemadaman , dsb.). Contohnya:
git diff --name-status
Salin selepas log masuk

Output:

M file1.txt
A file3.txt
D file4.txt
Salin selepas log masuk
  • -U/--unified=: Paparkan bilangan baris bagi konteks perbezaan. Jika tidak dinyatakan, lalai kepada 3. Contohnya:
# 显示有变化的文件的5行差异上下文内容
git diff -U5

# 比较某两个提交之间的差异,显示10行差异上下文
git diff -U10 abc123 def456
Salin selepas log masuk
  1. Penggunaan lain

Selain penggunaan yang diperkenalkan di atas, Git diff juga mempunyai kegunaan lain, seperti:

  • Bandingkan perbezaan antara dua cabang:
git diff branch1..branch2
Salin selepas log masuk
  • Bandingkan perbezaan antara dua teg:
git diff tag1..tag2
Salin selepas log masuk
  • Bandingkan Perbezaan komit daripada cawangan semasa:
git diff commit-id
Salin selepas log masuk
  • Output dalam format blog:
git diff --no-prefix > myfile.patch
Salin selepas log masuk

Gunakan arahan di atas untuk mengeluarkan output perbezaan dalam format blog biasa .

  • Bandingkan cawangan yang berbeza atau repositori yang berbeza:
git diff origin/master..HEAD
Salin selepas log masuk

Antaranya, origin/master ialah cawangan terpencil. Perintah ini boleh membandingkan cawangan jauh dan cawangan tempatan pada masa yang sama, atau membandingkan perbezaan antara dua cawangan tempatan.

  1. Ringkasan

Arahan Git diff ialah salah satu alatan yang sangat penting dalam kawalan versi Git Artikel ini memperkenalkan sintaks asas dan parameter git diff, dan memberikan Beberapa kegunaan khas.

Apabila menggunakan Git diff, anda harus memberi perhatian kepada keperluan sebenar dan memilih parameter yang sesuai untuk mengelakkan kesan yang tidak perlu. Juga, berhati-hati apabila membandingkan cawangan yang berbeza atau repositori yang berbeza.

Akhir sekali, penggunaan Git diff yang betul semasa proses pembangunan boleh membantu pembangun mengurus kod dengan lebih baik, mengatur proses pembangunan dengan lebih baik dan meningkatkan kecekapan pembangunan projek.

Atas ialah kandungan terperinci Penggunaan git diff yang betul. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!