ΠΡΡ Π€ΡΠΈΠ΄ΠΌΡΠ½ (Nat Friedman), ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ GitHub ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΠ» Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
Π²Π΅ΡΠΎΠΊ ΠΈΠΌΠ΅Π½ΠΈ «main» Π²ΠΌΠ΅ΡΡΠΎ «master» Π² Π·Π½Π°ΠΊ ΡΠΎΠ»ΠΈΠ΄Π°ΡΠ½ΠΎΡΡΠΈ Ρ ΠΏΡΠΎΡΠ΅ΡΡΡΡΡΠΈΠΌΠΈ ΠΏΡΠΎΡΠΈΠ² ΠΏΠΎΠ»ΠΈΡΠ΅ΠΉΡΠΊΠΎΠ³ΠΎ Π½Π°ΡΠΈΠ»ΠΈΡ ΠΈ ΡΠ°ΡΠΈΠ·ΠΌΠ° Π² Π‘Π¨Π. ΠΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½ΠΎΠ²ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π² ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
Π²Π΅ΡΠΊΠ° «master» ΡΠΎΡ
ΡΠ°Π½ΠΈΡ ΡΠ²ΠΎΡ ΠΈΠΌΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΎΠΏΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡ
ΠΎΠ΄Π° ΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π° «master»
ΡΠ°Π·Π²ΡΠ·Π°Π½ΠΎ ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠ°ΡΡΡΠ»ΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Git. ΠΠΎΠΊΠ° Π°ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΊΠ°ΠΌΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΈΠ΄Π΅ΠΈ ΡΠ²Π»ΡΡΡΡΡ Π»ΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΡΡ, Π° Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π²ΡΡΡΡΠΏΠ°ΡΡ ΠΏΡΠΎΡΠΈΠ², ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅, ΡΡΠΎ Π² Git ΡΠ»ΠΎΠ²ΠΎ master ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, Π° Π½Π΅ Π² ΠΏΠ°ΡΠ΅ ΡΠΎ ΡΠ»ΠΎΠ²ΠΎΠΌ «slave».
ΠΠΎ Π½Π°ΡΡΠΎΡΡΠ΅Π΅ ΡΠΎΡΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΠΈΡΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ OpenSSL, ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠΈΡΠ°Π»ΠΈ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ «ΡΡΡΠ½Π°Ρ ΠΌΠ°Π³ΠΈΡ». Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ OpenSSL ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠ°, Π·Π°ΠΌΠ΅Π½ΡΡΡΠ΅Π³ΠΎ «black magic» Π½Π° «magic», «blacklist» Π½Π° «block list», «white space» Π½Π° «whitespace», «master» Π½Π° «parent» ΠΈΠ»ΠΈ «main».
ΠΠΎΠΌΠΈΠΌΠΎ ΡΠΏΠΎΠΌΠΈΠ½Π°Π²ΡΠΈΡ
ΡΡ Π½Π° Π΄Π½ΡΡ
ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ² OpenZFS ΠΈ Go, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π½Π΅Π΄Π°Π²Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ:
- Π Chromium ΠΏΡΠΈΠ½ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π·Π°ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ Π² ΠΈΠΌΠ΅Π½Π°Ρ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠΎΠ΄Π΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ «blacklist» Π½Π° «blocklist» (Π²ΠΈΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ «blacklist» ΠΈ «whitelist» Π±ΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ Π² Π½Π°ΡΠ°Π»Π΅ 2019 Π³ΠΎΠ΄Π°).
- Π Android Π½Π°ΡΠ°Π»ΠΈ Π·Π°ΠΌΠ΅Π½ΡΡΡ «blacklist/whitelist» Π½Π° «blocklist/allowlist».
- ΠΡΠΎΠ΅ΠΊΡ Node.js Π²Π΅Π΄ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ Π·Π°ΠΌΠ΅Π½Π΅ blacklist/whitelist Π½Π° blocklist/allowlist, Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡΠΈΠ½ΡΡΠΎ.
- ΠΡΠΎΠ΅ΠΊΡ Curl Π·Π°ΠΌΠ΅Π½ΠΈΠ» ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ «whitelist» Π½Π° «skiplist», «select» ΠΈΠ»ΠΈ «skip», Π° «blacklist» Π½Π° «blocklist».
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Ansible ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΌΠ΅Π½Ρ Π²Π΅ΡΠΊΠΈ «master» Π½Π° «devel».
- Π ΠΊΠΎΠ΄Π΅ PHPUnit Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ Blacklist Π½Π° ExcludeList, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΈ ΡΠ°ΠΉΠ» PHPUnit/Util/Blacklist Π½Π° PHPUnit/Util/ExcludeList.
ΠΠ· ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ², ΠΎΡΠΊΠ°Π·Π°Π²ΡΠΈΡ
ΡΡ Π² ΠΏΡΠΎΡΠ»ΡΠ΅ Π³ΠΎΠ΄Ρ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ master/slave, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΡ Python, Drupal, Django, CouchDB, Salt, MediaWiki, PostgreSQL ΠΈ Redis. Π DNS-ΡΠ΅ΡΠ²Π΅ΡΠ΅ BIND ΡΠΎΡ
ΡΠ°Π½ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ «master/slave», Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Ρ «primary/secondary» ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ ΠΈΡ
Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ΄ΡΠ° Linux Π² ΡΠ²ΠΎΡ Π²ΡΠ΅ΠΌΡ Π½Π°Π·Π²Π°Π»ΠΈ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ «blacklist/whitelist» Π²Π·Π΄ΠΎΡΠΎΠΌ ΠΈ Π³Π»ΡΠΏΠΎΡΡΡΡ, Π½Π°Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΠΎΠΏΡΠ»ΠΈΡΡΠ°ΠΌΠΈ, ΠΈ ΠΎΡΠΊΠ°Π·Π°Π»ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π°ΠΌΠ΅Π½Ρ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠΎΡΡΠ½ΠΈΠ² ΡΡΠΎ ΡΠ΅ΡΠΌΠΈΠ½ «blocklist» ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΌΡΡΠ»Π° ΠΈ Π½Π΅ ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΠΎΡΠΏΡΠΈΡΡΠΈΠ΅ ΠΊΠ°ΠΊ «ΡΠΏΠΈΡΠΎΠΊ Π±Π»ΠΎΡΠ½ΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²».
ΠΠΎΠΌΠΈΡΠ΅Ρ IETF (Internet Engineering Task Force), Π·Π°Π½ΠΈΠΌΠ°ΡΡΠΈΠΉΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΠΌ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°ΠΌ «whitelist/blacklist» ΠΈ «master/slave», ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΡΠ΅ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡ
— Π²ΠΌΠ΅ΡΡΠΎ «master/slave» ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ «primary/secondary», «leader/follower»,
«active/standby»,
«primary/replica»,
«writer/reader»,
«coordinator/worker» ΠΈΠ»ΠΈ
«parent/helper», Π° Π²ΠΌΠ΅ΡΡΠΎ «blacklist/whitelist» — «blocklist/allowlist» ΠΈΠ»ΠΈ «block/permit».
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru