버전 관리 이동

4372 단어
บาง บาง บาง ใน โปรเจค go เรา อาจ อาจ จะ อยาก เขียน เขียน lib ไว้ แชร์ ให้ ให้ ทีม ใช้ ร่วม กัน กัน
ใน ใน นี้ นี้ lib ตัว นี้ นี้ ยัง ไม่ คง คง ที่ หรือ หรือ ยัง คง มี มี ของ ของ เติม เข้า เข้า ไป อยู่ เรื่อย ๆ ๆ เนื่อง จาก จาก เป็น ช่วง ช่วง ตั้ง ตั้ง ไข่ หาก เรา กำหนด กำหนด ไป ไป เลย ตั้ง แต่ แรก เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา จาก จาก จาก เป็น เป็น เป็น ช่วง ช่วง ช่วง ตั้ง ตั้ง ไข่ หาก เรา เรา กำหนด กำหนด เลย จาก จาก จาก จาก จาก เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา เวลา จาก จาก ช่วง ช่วง ตั้ง ตั้ง ไข่ หาก หาก เรา กำหนด กำหนด กำหนด กำหนด ไป เลย ➢

โดย โดย โดย บาง เฉพาะ รีบ มาก และ และ อยาก แยก แยก แยก repo เยอะ ๆ จะ ได้ ได้ มี หลาย ๆ ทีม ทำ งาน พร้อม ๆ กัน แต่ ก็ อยาก ใช้ ใช้ ใช้ lib ร่วม กัน ด้วย ด้วย

สมมุติ สมมุติ สมมุติ เริ่ม ผม การ สร้าง สร้าง lib กลาง โง่ ๆ มา ตัว หนึ่ง หนึ่ง แบบ นี้ นี้

go.mod

module github.com/pallat/versioning

go 1.16


버저닝.go

package versioning

var Number = 1


แล้วก็ 커밋 ให้เรียบร้อยแล้ว 푸시 ขึ้นไปทีแ
จากนั้นก็ลองสร้างโปรแจ็คมาเรียก้
메인.고

package main

import (
    "fmt"

    "github.com/pallat/versioning"
)

func main() {
    fmt.Println(versioning.Number)
}


เนื่องจากมี 외부 종속성 ให้ใช้

go mod init github.com/pallat/multiver
go get github.com/pallat/versioning



เราก็จะได้ไฟล์ go.mod หน้าตาประมาณนี้

go.mod

module github.com/pallat/multiver

go 1.16

require github.com/pallat/versioning v0.0.0-20210711103217-5a8cada9b2f5 // indirect


ทีนี้ถ้าตัว กลางอยากเปลี่ยนค่ป เว

package versioning

var Number = 2


คน คน คน มา ที่ ใช้ ใช้ lib ตัว นี้ นี้ ก็ อยาก อยาก ได้ ค่า ล่า สุด สุด เหมือน กัน พอ ไป ไป golgling ดู เขา ก็ บอก ว่า ว่า ลอง แบบ นี้ นี้ ดูสิ ดูสิ

go get github.com/pallat/versioning@latest



ซึ่งพอลองแล้ว ในกรณีนี้มันไม่เปลี่ยน ก็เลยต้องเปลี่ยนวิธี โดยใช้การระบุ version ซึ่งกรณีนี้ lib ของเรายังไม่ได้ทำ versioning จริงจัง ตอนนี้มันก็เลยใช้เลข commit แทนไปก่อน เราก็เลยต้องทำแบบนี้

go get github.com/pallat/versioning@ec81430



แล้วลองรันดู

go run main.go
2



คด้ผลลัพธ์ที่เปลี่ยนแปโดยใช้คห

โดย go การ ใช้ ใช้ บริหาร 버전 แบบ semver เพราะ เพราะ ฉะนั้น ถ้า lib เริ่ม นิ่ง นิ่ง แล้ว ก็ ควร เริ่ม เริ่ม ทำ ทำ ทำ ได้ ได้ แล้ว ถ้า ถ้า มี การ การ แก้ไข แก้ไข แล้ว ทำ ให้ เกิด ก็ ก็ ควร ควร ควร UP 메이저 버전 ด้วย เหมือน เหมือน เหมือน เหมือน เหมือน เหมือน เหมือน

좋은 웹페이지 즐겨찾기