Skip to content
8 / 15

Π’Π΅Π½Π΄ΠΎΡ€ΠΈΠ½Π³ Π² Go: Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π΅Ρ‰Ρ‘ Π½ΡƒΠΆΠ΅Π½ ΠΈ Ρ‡Π΅ΠΌ отличаСтся ΠΎΡ‚ кСша ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

Π’Π΅Π½Π΄ΠΎΡ€ΠΈΠ½Π³ β€” ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ исходников всСх зависимостСй Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ vendor/ Π²Π½ΡƒΡ‚Ρ€ΠΈ рСпозитория. Π”ΠΎ появлСния ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ это Π±Ρ‹Π» СдинствСнный способ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ зависимости; сСйчас ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ для воспроизводимости, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅Ρ‘ ΠΈ Ρ‚Π°ΠΊ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… вСрсий с go.sum. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π΅Π½Π΄ΠΎΡ€ΠΈΠ½Π³ остаётся Π² Ρ‚Ρ€Ρ‘Ρ… ситуациях: сборка Π² срСдС Π±Π΅Π· сСти Π²ΠΎΠΎΠ±Ρ‰Π΅, Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ Π°ΡƒΠ΄ΠΈΡ‚Π° ΠΈΠΌΠ΅Ρ‚ΡŒ вСсь собираСмый ΠΊΠΎΠ΄ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ исчСзновСния зависимости Ρƒ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π½Π΅ довСряСт прокси. ΠœΠ΅Ρ…Π°Π½ΠΈΠΊΠ° простая: go mod vendor создаёт ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΈ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ vendor/ Ρ‚ΡƒΠ»Ρ‡Π΅ΠΉΠ½ автоматичСски ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌ -mod=vendor β€” ΠΌΠΎΠ΄ΡƒΠ»ΠΈ большС Π½Π΅ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ, Π° кСш Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ кСша ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ: кСш ΠΎΠ±Ρ‰ΠΈΠΉ для всСх ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π»Π΅ΠΆΠΈΡ‚ Π²Π½Π΅ рСпозитория ΠΈ заполняСтся ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ; vendor/ относится ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² git ΠΈ Ρ€Π°Π·Π΄ΡƒΠ²Π°Π΅Ρ‚ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ. Главная ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ β€” расхоТдСниС: vendor/ Π½Π΅ обновляСтся сам.

Π’Π΅Π½Π΄ΠΎΡ€ΠΈΠ½Π³ Π² Go: Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π΅Ρ‰Ρ‘ Π½ΡƒΠΆΠ΅Π½ ΠΈ Ρ‡Π΅ΠΌ отличаСтся ΠΎΡ‚ кСша ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ | JScriptiser