"기존 태그를 방해 할 것"을 제거하는 방법


130

나는 VSCodium에서 git을 사용하고 있으며 git을 당기려고 할 때마다 불평합니다.

로그를 살펴보면

> 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다음에 도움이 될 때까지 명령을 수행하십시오 .

여기서 무엇이 잘못되고 있는지 명확하지 않습니다. 어떤 일이 발생했으며이 문제를 어떻게 해결할 수 있습니까?

내 말은 : 내 로컬 저장소를 폐기하고 다시 복제하는 것 외에.

답변:


335

원격 태그로 로컬 태그를 업데이트해야합니다.

git fetch --tags -f

그런 다음 다시 당깁니다.


14
이것은 나를 위해 일했습니다. VSCode에 문제가 있었는데 명령 줄에서 실행하면 문제가 해결되었습니다. :)
Juan Luis Faylon

2
감사합니다. 이에 대해 자세히 설명해 주시겠습니까? 이것은 일회성 명령입니까, 정확히 무엇이 문제였으며 어떻게 해결
되었습니까

5
원격에서 @ Sagivb.g, 누군가가 태그를 삭제하고 동일한 이름을 가진 새 태그를 생성하면 이것은 로컬에서 발생합니다
Tuan Tran

41

무엇이 잘못되고 있는지 확실하지 않다고 말했기 때문에 해당 태그를 어떤 용도로도 사용하지 않고 자신의 작업을 수행하기를 원한다고 가정합니다.

이 설정을 끕니다.

여기에 이미지 설명 입력

이제 모든 설정이 완료되었습니다.


상해:

태그는 특정 커밋에 대한 참조 일뿐입니다 (분기 이름과 마찬가지로). 주요 차이점은 git(내가 아는 한) 태그가 변경되지 않을 것이라고 가정하고 분기가 업데이트 될 것으로 예상된다는 것입니다.

따라서 "오류"는 로컬에 latestX 커밋을 가리키는 태그가 있지만 원격에는 latestY 커밋을 가리키는 태그가 있다는 것입니다. 원격에서 변경 사항을 적용하면 로컬 태그를 덮어 씁니다.

VSCode는 기본적으로 모든 태그를 가져 오므로 오류가 발생합니다.

와 같은 "움직이는"태그를 갖는 것은 잘못된latest 것이 없습니다. 이는 VSCode가 고려하는 것이 아닙니다 (개인적 의견).


또는 명령 줄을 사용하고 수동으로 git pull명령을 입력하여 문제를 방지 할 수 있습니다 . 특히이 --tags프로세스 단계를 건너 뛰 려면 생략해야합니다 .

이렇게하면 태그가 업데이트되지 않지만 여기서는 문제가되지 않는다고 생각합니다.


감사합니다. VSCodium을 업데이트해야했지만 작동했습니다. 내 로컬 태그를 제거 할 수도 있다고 생각합니다.
Skeeve

1
내 대답은 아래를 참조
투안 트란
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.