วิธีกำจัด "จะทำให้แท็กที่มีอยู่"


131

ฉันใช้คอมไพล์ใน VSCodium และทุกครั้งที่พยายามดึงคอมไพล์ก็บ่น

มองเข้าไปในบันทึกฉันเห็น

> git pull --tags origin master
From https://github.com/MY/REPO
 * branch            master     -> FETCH_HEAD
 ! [rejected]        latest     -> latest  (would clobber existing tag)
   9428765..935da94  master     -> origin/master

ทำตามคำสั่งด้วยวิธีใช้--forceจนกว่าจะถึงครั้งต่อไป

ฉันไม่ชัดเจนว่าเกิดอะไรขึ้นที่นี่ เกิดอะไรขึ้นและฉันจะแก้ไขปัญหานี้ได้อย่างไร

ฉันหมายถึง: นอกจากทิ้ง repo ในพื้นที่ของฉันแล้วทำการโคลนนิ่งอีกครั้ง

คำตอบ:


336

คุณควรอัปเดตแท็กในเครื่องของคุณด้วยแท็กระยะไกล:

git fetch --tags -f

แล้วดึงอีกครั้ง.


14
สิ่งนี้ได้ผลสำหรับฉัน ฉันมีปัญหากับ VSCode จากนั้นเรียกใช้สิ่งนี้ในบรรทัดคำสั่งได้รับการแก้ไขปัญหา :)
Juan Luis Faylon

2
ขอบคุณช่วยอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ไหม นี่เป็นคำสั่งครั้งเดียวปัญหาคืออะไรกันแน่และจะแก้ไขได้อย่างไร ..
Sagiv bg

5
@ Sagivb.g บนรีโมตมีคนลบแท็กและสร้างแท็กใหม่โดยใช้ชื่อเดียวกันสิ่งนี้จะเกิดขึ้นในพื้นที่ของคุณ
Tuan Tran

41

เนื่องจากคุณบอกว่ามันไม่ชัดเจนว่าเกิดอะไรขึ้นฉันจึงถือว่าคุณไม่ได้ใช้แท็กนั้นเพื่ออะไรและคุณแค่ต้องการทำงานของคุณเอง

ปิดการตั้งค่านี้:

ใส่คำอธิบายภาพที่นี่

ตอนนี้คุณพร้อมแล้ว


คำอธิบายโดยละเอียด:

แท็กเป็นเพียงการอ้างอิงถึงการกระทำที่เฉพาะเจาะจง (เช่นเดียวกับชื่อสาขา) ความแตกต่างที่สำคัญคือgit(เท่าที่ฉันรู้) ถือว่าแท็กจะไม่เปลี่ยนแปลงซึ่งคาดว่าสาขาจะได้รับการอัปเดต

ดังนั้น "ข้อผิดพลาด" คือคุณมีแท็กในเครื่องของคุณที่เรียกว่าlatestชี้ไปที่คอมมิต X - แต่รีโมตมีแท็กที่เรียกว่าlatestชี้เพื่อกระทำ Y หากคุณใช้การเปลี่ยนแปลงจากรีโมตคุณจะเขียนทับแท็กในเครื่องของคุณ

VSCode จะดึงแท็กทั้งหมดตามค่าเริ่มต้นดังนั้นคุณจึงได้รับข้อผิดพลาด

ไม่มีอะไรผิดปกติกับการมีแท็กแบบ "ย้าย" latestนั่นไม่ใช่สิ่งที่ VSCode นำมาพิจารณา (ความคิดเห็นส่วนตัว)


หรือคุณสามารถหลีกเลี่ยงปัญหาได้โดยใช้บรรทัดคำสั่งและป้อนgit pullคำสั่งด้วยตนเอง คุณต้องละเว้น--tagsเพื่อข้ามขั้นตอนนี้ไป

หากคุณทำเช่นนี้แท็กของคุณจะไม่ได้รับการอัปเดต แต่ฉันไม่คิดว่าเป็นเรื่องน่ากังวลที่นี่


ขอบคุณมาก. ฉันต้องอัปเดต VSCodium ของฉัน แต่แล้วมันก็ใช้งานได้ ฉันคิดว่าฉันสามารถกำจัดแท็กท้องถิ่นของฉันได้หรือไม่
Skeeve

1
ดูคำตอบของฉันด้านล่าง
Tuan Tran
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.