Hari ini saya ingin berbagi dengan Anda skrip bash kecil yang telah saya gunakan dengan sukses selama beberapa tahun sekarang.
Pertama-tama, saya akan menjelaskan situasi yang sering terjadi pada saya hingga hari ini, yang mendorong saya untuk menulis skrip. Saat mengerjakan tugas baru, saya secara berkala menyimpan status proyek saat ini di gita, sementara komit itu sendiri tidak membawa beban semantik apa pun, baik dalam konten atau dalam pesan komit.
Hasilnya, cabang lokal dari tugas yang sudah selesai terlihat seperti ini:

Tahap selanjutnya datang:
1) (feature-all-private )


: , , (- , )

: , โ git-cmp
โ bash- .
"" (feature-private) "" (feature-public):
git checkout feature-public
git cmp feature-private
, :
$ git cmp feature-private
common parent commit: 758d3fa
cleaning...
...done
git-diff:
$ git cmp feature-private
common parent commit: 758d3fa
diff --git a/test.txt b/test.txt
index 1e65656..2013c09 100644
--- a/test.txt
+++ b/test.txt
@@ -1,4 +1,4 @@
-oldLine
+newLine
cleaning...
...done
, :

Saya harap skrip ini akan berguna untuk orang lain.
Sumber yang diunggah di github
Gambar dibuat dengan codepen.io
Pembaruan: Ternyata fungsi ini sudah diimplementasikan di set git standar dan disebut git-diff