เริ่มต้นด้วย v1.11 Go เพิ่มการสนับสนุนสำหรับโมดูล คำสั่ง
go mod init <package name>
go build
จะสร้างgo.mod
และgo.sum
ไฟล์ที่มีเวอร์ชันที่พบทั้งหมดสำหรับการอ้างอิงแพ็กเกจ
หากโมดูลไม่มีรีลีสใด ๆ จะใช้คอมมิตล่าสุดของโมดูลนั้น หากโมดูลมีรีลีสโมดูลล่าสุดจะถูกเลือกเป็นการอ้างอิง
อย่างไรก็ตามบางครั้งฉันต้องการฟังก์ชันที่ยังไม่ได้อยู่ในรุ่นที่เผยแพร่ แต่จากการคอมมิตที่ทำหลังจากรุ่นนั้น ฉันจะตั้งค่าgo.mod
ไม่ให้ชี้ไปที่รีลีสของโมดูลได้อย่างไร แต่เป็นการคอมมิตเฉพาะในที่เก็บของโมดูล
ดูเหมือนว่าฉันสามารถทำได้ด้วยมือไปแล้ว Mod ด้วย
module /my/module
require (
...
github.com/someone/some_module v0.0.0-20181121201909-af044c0995fe
...
)
โดยที่v0.0.0
ไม่ตรงกับแท็กรุ่นที่เผยแพร่ล่าสุด20181121201909
จะเป็นการประทับเวลาคอมมิตและaf044c0995fe
จะเป็นคอมมิตแฮชหรือไม่ ข้อมูลดังกล่าวควรหาและป้อนด้วยมือหรือมีวิธีที่ดีกว่านี้?
/commits
/pulls
ดูข้อมูลเพิ่มเติมที่นี่: golang / go # 31191กรองการกระทำประเภทนี้ออกอย่างชัดเจน