Telegram Group & Telegram Channel
🔧 Локальное исправление зависимостей в Go

Иногда при разработке на Go возникает необходимость временно изменить внешний модуль — например, внести исправление, которое ещё не вмержили в основной репозиторий. Go предоставляет удобный механизм для этого.

🧩 Используем replace в go.mod

В Go можно использовать директиву replace, чтобы указать локальный путь вместо внешней зависимости:


replace github.com/some/module => ../local-copy/module


Теперь при сборке Go будет использовать код из ../local-copy/module вместо кода, загружаемого из Git.

Это особенно удобно, если вы:

* работаете над фиксом бага во внешнем пакете;
* тестируете pull request;
* занимаетесь временным форком библиотеки.

⚠️ Что важно помнить

1. Не коммитьте replace в main ветку!
Эти изменения локальны и не должны попадать в боевой код.

2. go get не влияет на replace
Даже если вы обновите модуль через go get, replace всё равно будет использовать локальный путь.

3. Проверьте go.sum
После замены зависимостей могут измениться хэши в go.sum. Это нормально, но стоит за этим следить.

🛠 Пример сценария

Вы нашли баг в github.com/example/lib, клонировали его:


git clone https://github.com/example/lib ~/dev/lib-patched


Затем в go.mod вашего проекта:


replace github.com/example/lib => ~/dev/lib-patched


Теперь go build будет использовать вашу локальную версию.

https://eli.thegreenplace.net/2024/locally-patching-dependencies-in-go/

👉 @golang_lib



tg-me.com/golang_lib/476
Create:
Last Update:

🔧 Локальное исправление зависимостей в Go

Иногда при разработке на Go возникает необходимость временно изменить внешний модуль — например, внести исправление, которое ещё не вмержили в основной репозиторий. Go предоставляет удобный механизм для этого.

🧩 Используем replace в go.mod

В Go можно использовать директиву replace, чтобы указать локальный путь вместо внешней зависимости:


replace github.com/some/module => ../local-copy/module


Теперь при сборке Go будет использовать код из ../local-copy/module вместо кода, загружаемого из Git.

Это особенно удобно, если вы:

* работаете над фиксом бага во внешнем пакете;
* тестируете pull request;
* занимаетесь временным форком библиотеки.

⚠️ Что важно помнить

1. Не коммитьте replace в main ветку!
Эти изменения локальны и не должны попадать в боевой код.

2. go get не влияет на replace
Даже если вы обновите модуль через go get, replace всё равно будет использовать локальный путь.

3. Проверьте go.sum
После замены зависимостей могут измениться хэши в go.sum. Это нормально, но стоит за этим следить.

🛠 Пример сценария

Вы нашли баг в github.com/example/lib, клонировали его:


git clone https://github.com/example/lib ~/dev/lib-patched


Затем в go.mod вашего проекта:


replace github.com/example/lib => ~/dev/lib-patched


Теперь go build будет использовать вашу локальную версию.

https://eli.thegreenplace.net/2024/locally-patching-dependencies-in-go/

👉 @golang_lib

BY Библиотека Go (Golang) разработчика


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/golang_lib/476

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

What is Secret Chats of Telegram

Secret Chats are one of the service’s additional security features; it allows messages to be sent with client-to-client encryption. This setup means that, unlike regular messages, these secret messages can only be accessed from the device’s that initiated and accepted the chat. Additionally, Telegram notes that secret chats leave no trace on the company’s services and offer a self-destruct timer.

How to Buy Bitcoin?

Most people buy Bitcoin via exchanges, such as Coinbase. Exchanges allow you to buy, sell and hold cryptocurrency, and setting up an account is similar to opening a brokerage account—you’ll need to verify your identity and provide some kind of funding source, such as a bank account or debit card. Major exchanges include Coinbase, Kraken, and Gemini. You can also buy Bitcoin at a broker like Robinhood. Regardless of where you buy your Bitcoin, you’ll need a digital wallet in which to store it. This might be what’s called a hot wallet or a cold wallet. A hot wallet (also called an online wallet) is stored by an exchange or a provider in the cloud. Providers of online wallets include Exodus, Electrum and Mycelium. A cold wallet (or mobile wallet) is an offline device used to store Bitcoin and is not connected to the Internet. Some mobile wallet options include Trezor and Ledger.

telegram from tw


Telegram Библиотека Go (Golang) разработчика
FROM USA