Istilah "porselen" muncul sesekali dalam dokumentasi Git. Apa artinya?
git
terminology
Jan Hettich
sumber
sumber
Lebih penting lagi, istilah "porselen" berlaku untuk perintah tingkat tinggi , dengan output:
Itu kuncinya: jika Anda skrip, Anda harus menggunakan perintah plumbing jika mungkin , dengan output yang stabil. Bukan perintah porselen.
Namun, Anda dapat menggunakan output dari perintah porselen yang memiliki
--porcelain
opsi dalam skrip (lihat di bawah), seperti:Lihat " Bagaimana cara saya menentukan secara program apakah ada perubahan yang tidak dikomit? " Sebagai contoh untuk menggunakan perintah plumbing alih-alih yang porselen.
Catatan: Perintah porselen dapat memiliki
--porcelain
opsi.Misalnya:,
git status --porcelain
yang menunjukkan output yang ingin diuraikan .Utas yang disebutkan di atas merinci:
Itu mencerminkan kebutuhan, bagi pengguna git, untuk menggunakan perintah porselen dalam skrip mereka!
Tetapi hanya dengan output yang stabil (dengan
--porcelain
)Seperti yang dikomentari oleh william-berg , hal yang sama berlaku untuk
git push
!Seperti John Glassmyer usulkan dalam komentar :
Dan itu bisa didukung oleh kasus pertama dari
--porcelain
pengenalan "opsi"(sebelum
git status --porcelain
, komit 6f15787, September 2009, git 1.7.0 ,sebelumnya
git push --porcelain
, komit 1965ff7, Juni 2009, git 1.6.4 ):git blame --porcelain
:Commit b5c698d, Oktober 2006, git 1.4.4
sumber
git push
memiliki mesin yang juga dapat dibaca--porcelain
.--porcelain
sini adalah "menghasilkan keluaran yang cocok untuk dikonsumsi oleh skrip porselen".git diff-tree --word-diff=porcelain
Mata uang dan penggunaan istilah "porselen" dalam git sebenarnya oleh Mike Taht, sementara sebaliknya kehilangan perdebatan sengit dengan Linus Torvalds.
http://www.gelato.unsw.edu.au/archives/git/0504/0881.html
sumber
- Porselen , Git Wiki
sumber
Perintah porselen dirancang untuk konsumsi manusia, berbeda dengan perintah yang outputnya mudah diurai oleh komputer.
git status
akan menjadi salah satu contohnya.sumber
--porcelain
opsi, itu untuk konsumsi mesin.git status --porcelain
: Berikan output dalam format skrip yang mudah diurai. (...) tetapi akan tetap stabil di seluruh versi Git dan terlepas dari konfigurasi pengguna.git status --porcelain
memiliki format stabil yang dapat diuraikan, tetapistatus
perintah itu sendiri dirancang untuk menghadap pengguna (sebagai lawan, misalnya,git ls-files
).Penjelasan Singkat dan Sederhana
Tapi bagaimana dengan
--porcelain
pilihan yang membingungkan !?--porcelain
opsi lalu gunakan output untuk skrip. Pada dasarnya penulis git secara implisit berjanji untuk tidak mengubah apa pun di sana, dalam waktu dekat. contoh: Saya dapat menggunakangit status --porcelain
dan menggunakan output untuk skrip dan itu akan baik-baik saja.Dari mana asal istilah porselen / pipa ledeng?
sumber
For more detail, checkout VonC's answer.
--porcelain
pada perintah "porselen" yang sudah ada untuk mencapai fungsionalitas "pseudo-plumbing" berpadu dengan sangat baik dengan desain UI umum Git ...;)--plumbing
(karena Anda tukang ledeng kali ini, bukan pengguna "porselen" biasa).Jawaban Greg Hewgill tepat sekali. Perhatikan bahwa ada porselen alternatif yang tersedia untuk Git, termasuk Easy Git, yap, pyrite, dan vng. Masing-masing dimaksudkan untuk membuat Git lebih mudah dipelajari / digunakan untuk beberapa bagian dari komunitas. Tautan ke semua proyek ini ada di halaman Easy Git: http://people.gnome.org/~newren/eg/ .
sumber
https://git.wiki.kernel.org/index.php/Porcelain
sumber
Ada dua arti porselen berbeda di git.
Kedua makna ini, meskipun dapat diperdebatkan tidak sepenuhnya bertentangan, dapat muncul kontradiktif.
A. Konseptual (pipa vs porselen)
Buku Pro Git resmi :
B.
--porcelain
/=porcelain
opsiBanyak perintah git datang dengan
--porcelain
opsi yang sedang dimaksudkan untuk scripting.git status
' dokumentasi :git diff
's dokumentasi :sumber