Fix golang tag issue
diff --git a/golang/README.md b/golang/README.md
index cbb1947..9e0c28b 100644
--- a/golang/README.md
+++ b/golang/README.md
@@ -19,5 +19,5 @@
 Otherwise, to install the `golang` package, run the following command:
 
 ```sh
-go get -u github.com/apache/rocketmq-clients/golang
+go get -u github.com/apache/rocketmq-clients/golang/v5
 ```
diff --git a/golang/client.go b/golang/client.go
index 313092e..48104cc 100644
--- a/golang/client.go
+++ b/golang/client.go
@@ -28,10 +28,10 @@
 	"sync"
 	"time"
 
-	innerMD "github.com/apache/rocketmq-clients/golang/metadata"
-	"github.com/apache/rocketmq-clients/golang/pkg/ticker"
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	innerMD "github.com/apache/rocketmq-clients/golang/v5/metadata"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/ticker"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"github.com/google/uuid"
 	"go.uber.org/atomic"
 	"go.uber.org/zap"
diff --git a/golang/client_manager.go b/golang/client_manager.go
index e3e3866..38be735 100644
--- a/golang/client_manager.go
+++ b/golang/client_manager.go
@@ -22,9 +22,9 @@
 	"sync"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/ticker"
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/ticker"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/grpc/codes"
 	"google.golang.org/grpc/status"
 )
diff --git a/golang/client_manager_mock.go b/golang/client_manager_mock.go
index f0d4d76..e5eb7b9 100644
--- a/golang/client_manager_mock.go
+++ b/golang/client_manager_mock.go
@@ -22,7 +22,7 @@
 	reflect "reflect"
 	time "time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 )
 
diff --git a/golang/client_manager_test.go b/golang/client_manager_test.go
index d615828..d34f956 100644
--- a/golang/client_manager_test.go
+++ b/golang/client_manager_test.go
@@ -25,7 +25,7 @@
 	"testing"
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 	"github.com/prashantv/gostub"
 	"google.golang.org/grpc/metadata"
diff --git a/golang/client_mock.go b/golang/client_mock.go
index 58d27ae..8205b10 100644
--- a/golang/client_mock.go
+++ b/golang/client_mock.go
@@ -21,7 +21,7 @@
 	context "context"
 	reflect "reflect"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 )
 
diff --git a/golang/client_options.go b/golang/client_options.go
index ad1a751..4db37f3 100644
--- a/golang/client_options.go
+++ b/golang/client_options.go
@@ -20,7 +20,7 @@
 import (
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 )
 
 type clientOptions struct {
diff --git a/golang/client_test.go b/golang/client_test.go
index 41079cc..69c14c7 100644
--- a/golang/client_test.go
+++ b/golang/client_test.go
@@ -23,8 +23,8 @@
 	"testing"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/credentials"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 	"github.com/prashantv/gostub"
 	"github.com/stretchr/testify/assert"
diff --git a/golang/config.go b/golang/config.go
index 42ead57..fdb0416 100644
--- a/golang/config.go
+++ b/golang/config.go
@@ -17,7 +17,7 @@
 
 package golang
 
-import "github.com/apache/rocketmq-clients/golang/credentials"
+import "github.com/apache/rocketmq-clients/golang/v5/credentials"
 
 type Config struct {
 	Endpoint      string `validate:"required"`
diff --git a/golang/conn.go b/golang/conn.go
index eeca8a0..75b30b6 100644
--- a/golang/conn.go
+++ b/golang/conn.go
@@ -22,7 +22,7 @@
 	"errors"
 	"fmt"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/grpc/middleware/zaplog"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/grpc/middleware/zaplog"
 	validator "github.com/go-playground/validator/v10"
 	"google.golang.org/grpc"
 	"google.golang.org/grpc/credentials"
diff --git a/golang/conn_options.go b/golang/conn_options.go
index 0c0e7cc..2f59432 100644
--- a/golang/conn_options.go
+++ b/golang/conn_options.go
@@ -24,7 +24,7 @@
 	"math"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/zaplog"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/zaplog"
 	"go.uber.org/zap"
 	"google.golang.org/grpc"
 )
diff --git a/golang/consumer.go b/golang/consumer.go
index b2d9596..2be5a7f 100644
--- a/golang/consumer.go
+++ b/golang/consumer.go
@@ -20,7 +20,7 @@
 import (
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 )
 
 type Consumer interface {
diff --git a/golang/error.go b/golang/error.go
index 06fa590..632634d 100644
--- a/golang/error.go
+++ b/golang/error.go
@@ -21,7 +21,7 @@
 	"errors"
 	"fmt"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 )
 
 type ErrRpcStatus struct {
diff --git a/golang/example/consumer/simple_consumer/main.go b/golang/example/consumer/simple_consumer/main.go
index f53dedc..6b1b974 100644
--- a/golang/example/consumer/simple_consumer/main.go
+++ b/golang/example/consumer/simple_consumer/main.go
@@ -24,8 +24,8 @@
 	"os"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/example/producer/async/main.go b/golang/example/producer/async/main.go
index dfebe18..7190b86 100644
--- a/golang/example/producer/async/main.go
+++ b/golang/example/producer/async/main.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/example/producer/delay/main.go b/golang/example/producer/delay/main.go
index 947dc2f..42b376e 100644
--- a/golang/example/producer/delay/main.go
+++ b/golang/example/producer/delay/main.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/example/producer/fifo/main.go b/golang/example/producer/fifo/main.go
index 2aa8443..48229ba 100644
--- a/golang/example/producer/fifo/main.go
+++ b/golang/example/producer/fifo/main.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/example/producer/normal/main.go b/golang/example/producer/normal/main.go
index 2f5bcb6..cc2916f 100644
--- a/golang/example/producer/normal/main.go
+++ b/golang/example/producer/normal/main.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/example/producer/transaction/main.go b/golang/example/producer/transaction/main.go
index 584a770..f46d227 100644
--- a/golang/example/producer/transaction/main.go
+++ b/golang/example/producer/transaction/main.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	rmq_client "github.com/apache/rocketmq-clients/golang"
-	"github.com/apache/rocketmq-clients/golang/credentials"
+	rmq_client "github.com/apache/rocketmq-clients/golang/v5"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
 )
 
 const (
diff --git a/golang/go.mod b/golang/go.mod
index 63e971f..921328b 100644
--- a/golang/go.mod
+++ b/golang/go.mod
@@ -1,4 +1,4 @@
-module github.com/apache/rocketmq-clients/golang
+module github.com/apache/rocketmq-clients/golang/v5
 
 go 1.17
 
diff --git a/golang/loadBalancer.go b/golang/loadBalancer.go
index 385b065..db9cbd4 100644
--- a/golang/loadBalancer.go
+++ b/golang/loadBalancer.go
@@ -22,8 +22,8 @@
 	"sync"
 	"sync/atomic"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"github.com/dchest/siphash"
 	// "github.com/dchest/siphash"
 )
diff --git a/golang/log.go b/golang/log.go
index 31d3e7f..a835ac6 100644
--- a/golang/log.go
+++ b/golang/log.go
@@ -23,7 +23,7 @@
 	"strconv"
 	"strings"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
 	"github.com/natefinch/lumberjack"
 	"go.uber.org/zap"
 	"go.uber.org/zap/zapcore"
diff --git a/golang/message.go b/golang/message.go
index 4c16ba6..00586b1 100644
--- a/golang/message.go
+++ b/golang/message.go
@@ -25,8 +25,8 @@
 	"strconv"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/timestamppb"
 )
 
diff --git a/golang/message_id_codec.go b/golang/message_id_codec.go
index 01a16fa..579b513 100644
--- a/golang/message_id_codec.go
+++ b/golang/message_id_codec.go
@@ -27,7 +27,7 @@
 	"sync/atomic"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
 )
 
 /**
diff --git a/golang/metric.go b/golang/metric.go
index 464b91a..1be579f 100644
--- a/golang/metric.go
+++ b/golang/metric.go
@@ -23,8 +23,8 @@
 	"time"
 
 	"contrib.go.opencensus.io/exporter/ocagent"
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"go.opencensus.io/stats"
 	"go.opencensus.io/stats/view"
 	"go.opencensus.io/tag"
diff --git a/golang/pkg/grpc/middleware/zaplog/zaplog.go b/golang/pkg/grpc/middleware/zaplog/zaplog.go
index bd7b0a2..5564977 100644
--- a/golang/pkg/grpc/middleware/zaplog/zaplog.go
+++ b/golang/pkg/grpc/middleware/zaplog/zaplog.go
@@ -21,7 +21,7 @@
 	"context"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/zaplog/ctxzap"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/zaplog/ctxzap"
 
 	"go.uber.org/zap"
 	"google.golang.org/grpc"
diff --git a/golang/pkg/utils/utils.go b/golang/pkg/utils/utils.go
index d07e60e..76be793 100644
--- a/golang/pkg/utils/utils.go
+++ b/golang/pkg/utils/utils.go
@@ -33,8 +33,8 @@
 	"sync/atomic"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/metadata"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/metadata"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"github.com/valyala/fastrand"
 	"go.opencensus.io/trace"
 	MD "google.golang.org/grpc/metadata"
diff --git a/golang/pkg/utils/utils_test.go b/golang/pkg/utils/utils_test.go
index eca670c..c26f8c4 100644
--- a/golang/pkg/utils/utils_test.go
+++ b/golang/pkg/utils/utils_test.go
@@ -21,7 +21,7 @@
 	"compress/gzip"
 	"testing"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 )
 
 func TestMod(t *testing.T) {
diff --git a/golang/producer.go b/golang/producer.go
index c3ad992..54e9412 100644
--- a/golang/producer.go
+++ b/golang/producer.go
@@ -24,8 +24,8 @@
 	"sync"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/durationpb"
 )
 
diff --git a/golang/producer_options.go b/golang/producer_options.go
index 445a2d3..fd9ba29 100644
--- a/golang/producer_options.go
+++ b/golang/producer_options.go
@@ -22,7 +22,7 @@
 	"sync"
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/durationpb"
 )
 
diff --git a/golang/producer_test.go b/golang/producer_test.go
index 2902eaa..7e45271 100644
--- a/golang/producer_test.go
+++ b/golang/producer_test.go
@@ -23,8 +23,8 @@
 	"testing"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/credentials"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/credentials"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 	"github.com/prashantv/gostub"
 )
diff --git a/golang/publishing_message.go b/golang/publishing_message.go
index 5ce6854..dbf8d2f 100644
--- a/golang/publishing_message.go
+++ b/golang/publishing_message.go
@@ -20,8 +20,8 @@
 import (
 	"fmt"
 
-	innerOS "github.com/apache/rocketmq-clients/golang/pkg/os"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	innerOS "github.com/apache/rocketmq-clients/golang/v5/pkg/os"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/timestamppb"
 )
 
diff --git a/golang/rpc_client.go b/golang/rpc_client.go
index 5ea838e..98e6863 100644
--- a/golang/rpc_client.go
+++ b/golang/rpc_client.go
@@ -25,7 +25,7 @@
 	"sync/atomic"
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	// "google.golang.org/protobuf/types/known/durationpb"
 )
 
diff --git a/golang/rpc_client_mock.go b/golang/rpc_client_mock.go
index fb2ddf8..7afab82 100644
--- a/golang/rpc_client_mock.go
+++ b/golang/rpc_client_mock.go
@@ -22,7 +22,7 @@
 	reflect "reflect"
 	time "time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	gomock "github.com/golang/mock/gomock"
 )
 
diff --git a/golang/simple_consumer.go b/golang/simple_consumer.go
index 43443ff..c6918f5 100644
--- a/golang/simple_consumer.go
+++ b/golang/simple_consumer.go
@@ -25,8 +25,8 @@
 	"sync/atomic"
 	"time"
 
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/durationpb"
 	"google.golang.org/protobuf/types/known/timestamppb"
 )
diff --git a/golang/simple_consumer_options.go b/golang/simple_consumer_options.go
index 2f919e9..09ad1d7 100644
--- a/golang/simple_consumer_options.go
+++ b/golang/simple_consumer_options.go
@@ -21,7 +21,7 @@
 	"fmt"
 	"time"
 
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 	"google.golang.org/protobuf/types/known/durationpb"
 )
 
diff --git a/golang/user_agent.go b/golang/user_agent.go
index 012f532..fd3c88c 100644
--- a/golang/user_agent.go
+++ b/golang/user_agent.go
@@ -18,8 +18,8 @@
 package golang
 
 import (
-	"github.com/apache/rocketmq-clients/golang/pkg/utils"
-	v2 "github.com/apache/rocketmq-clients/golang/protocol/v2"
+	"github.com/apache/rocketmq-clients/golang/v5/pkg/utils"
+	v2 "github.com/apache/rocketmq-clients/golang/v5/protocol/v2"
 )
 
 type userAgent struct {