El término "porcelana" aparece ocasionalmente en la documentación de Git. Qué significa eso?
git
terminology
Jan Hettich
fuente
fuente

Más importante aún, el término "porcelana" se aplica a los comandos de alto nivel , con salida:
Esa es la clave: si escribe, debe usar, si es posible , comandos de plomería , con salidas estables. No comandos de porcelana.
Sin embargo, puede usar la salida de un comando de porcelana que tiene una
--porcelainopción en el script (ver a continuación), como:Consulte " ¿Cómo determino programáticamente si hay cambios no confirmados? " Como ejemplo para usar comandos de plomería en lugar de los de porcelana.
Nota: Un comando de porcelana puede tener una
--porcelainopción.Por ejemplo:,
git status --porcelainque designa una salida destinada a ser analizada .El hilo mencionado anteriormente detalla:
¡Eso refleja la necesidad, para los usuarios de git, de usar comandos de porcelana en sus scripts!
Pero solo con salida estable (con
--porcelain)Como se ha comentado por William-berg , lo mismo pasa
git push!Como John Glassmyer propone en los comentarios :
Y eso podría estar respaldado por el primer caso de
--porcelainintroducción de " opción"(antes
git status --porcelain, commit 6f15787, septiembre de 2009, git 1.7.0 ,antes
git push --porcelain, commit 1965ff7, junio de 2009, git 1.6.4 ):git blame --porcelain:Commit b5c698d, octubre de 2006, git 1.4.4
fuente
git pushtiene una lectura mecánica anómala similar--porcelain.--porcelainaquí es "producir productos aptos para el consumo de guiones de porcelana".git diff-tree --word-diff=porcelainLa acuñación y el uso del término "porcelana" en git fue en realidad de Mike Taht, mientras que, de lo contrario, perdió una acalorada discusión con Linus Torvalds.
http://www.gelato.unsw.edu.au/archives/git/0504/0881.html
fuente
- Porcelana , Git Wiki
fuente
Los comandos de porcelana están diseñados para el consumo humano, a diferencia de los comandos cuya salida es fácil de analizar para las computadoras.
git statusSería un ejemplo.fuente
--porcelainopción, es para consumo de máquina.git status --porcelain: Proporcione la salida en un formato fácil de analizar para los scripts. (...) pero se mantendrá estable en todas las versiones de Git e independientemente de la configuración del usuario.git status --porcelaintiene un formato estable que se puede analizar, pero elstatuscomando en sí está diseñado para ser dirigido al usuario (en lugar de, por ejemplogit ls-files).La explicación breve y simple
¿Pero qué pasa con la
--porcelainopción confusa ?--porcelainopción y luego use la salida para la secuencia de comandos. Básicamente, los autores de git están implícitamente prometiendo no cambiar nada allí, en el corto plazo. ejemplo: puedo usargit status --porcelainy usar la salida para las secuencias de comandos y eso estaría perfectamente bien.¿De dónde viene la terminología de porcelana / plomería?
fuente
For more detail, checkout VonC's answer.--porcelainen comandos ya "porcelana" para lograr la funcionalidad de "pseudo-plomería" combina muy bien con el diseño general de la interfaz de usuario de Git ...;)--plumbing(ya que esta vez es un plomero, no un usuario habitual de "porcelana").La respuesta de Greg Hewgill es exactamente correcta. Tenga en cuenta que hay porcelanas alternativas disponibles para Git, que incluyen Easy Git, yap, pyrite y vng. Cada uno está destinado a hacer que Git sea más fácil de aprender / usar para alguna parte de la comunidad. Los enlaces a todos estos proyectos se encuentran en la página Easy Git: http://people.gnome.org/~newren/eg/ .
fuente
https://git.wiki.kernel.org/index.php/Porcelain
fuente
Hay dos significados distintos de porcelana en git.
Estos dos significados, si bien se puede argumentar que no son estrictamente contradictorios, pueden parecer contradictorios.
A. Conceptual (fontanería vs porcelana)
El libro oficial de Pro Git :
B.
--porcelain/=porcelainopcionesMuchos comandos de git vienen con una
--porcelainopción que está destinada a secuencias de comandos.git status' documentación :git diff's documentación :fuente