저는 잠시 동안 git-svn을 사용하고 있습니다. 우리 팀의 다른 모든 사람들은 svn을 직접 사용하고 있습니다. 우리는 모두 git를 사용하기로 결정했습니다.git-svn에서 git으로 마이그레이션 한 후 가짜 원격 브랜치를 제거하려면 어떻게해야합니까?
$ git remote add origin [email protected]:mycompany/myproject.git
$ git push -u origin master
이 잘 갔지만, 프로세스가 완료되었을 때 그 자식이 모든 말도 안되는 지점을 유지했다 :이 작업을 수행하기 위해, 나는 내 "쪽"인 자식의 repo 사용하는 등 같은 자식을-svn을 -svn은 내가 그것을 처음 사용할 때 하나의 작은 꼬임으로 만들었습니다. git은 더 이상 그들이 지점이라고 인정하지 않습니다. 여기처럼 내 목록을보고 무엇 :이 성가신했다
$ git branch -r
domain_integration
dot-org
[email protected]
email-edit-page
origin/account-integration
origin/master
origin/stable
prototype_to_jquery-1.1.0
[email protected]
tags/development-1.1.0.0
tags/pre-2011-02-08
tags/production-1.0
tags/stable-1.0.0
tags/stable-1.0.1
tags/stable-1.1.0
tags/stable-1.1.0.1
trunk-stash
들이 (대부분) 어디에서 왔는지 내가 아는 불구하고,하지만 지금 난 삭제할 수는 없습니다.
$ git branch -d trunk-stash
error: branch 'trunk-stash' not found.
내가 그들을 .git/심판/리모트로 가서 바로 삭제하여이 중 일부를 해결할 수 있었다, 그러나 약간이 있었다 :이 문제가 발생합니다. 내가 찾을 수있는 유일한 곳은 .git/info/refs이다. 다음과 같이 보입니다 :
...
7788d300f0d4370d65a3ccf3e47d90f7fb16b0b4 refs/remotes/tags/stable-1.0.0
aace34d6745080ce2b6b29e927f5d1b050b99511 refs/remotes/tags/stable-1.0.1
58bd2ac23d5979ff61bd6305df18f8a5da50f888 refs/remotes/tags/stable-1.1.0
644fd55fcdf2569305cdbe0b6fefb9f247625658 refs/remotes/tags/stable-1.1.0.1
bc8e9f9177c9612aceb55624adea1b02e9e8620f refs/remotes/trunk
69493e14345e6a7a4db324935bccd6393f201da4 refs/remotes/trunk-stash
25b7024f6c1d38c10400b2c2e7b446aae1e84e06 refs/stash
...
이것은 단지 마지막 커밋과 관련이 있다고 가정합니다. "가짜"파일을 삭제하는 것이 합리적입니까? 이게 뭔가를 깨뜨릴 수 있습니까? (작동합니까?)
해당 명령으로 원격 분기를 나열하고 있습니다. 'branch -d'를 사용하여 원격 브랜치를 삭제할 수 없습니다. 모든 역사적인 svn 분기를 삭제 하시겠습니까? (당신은'.git/packed-refs'에서 찾을 수 있습니다.) – knittl
예, 원격 브랜치입니다. 나는 그것을 언급해야했고 조금 다른 방식으로 질문을해야했다. 자식은 더 이상 존재하지 않는다고 어떻게 말합니까? git/packed-refs에있는 것이 맞습니다. 아마도 그 파일을 삭제해야합니다. 아니면 데이터베이스가 압축 될 때 사라질 것입니까? (나는 처음부터 이것을하지 않았다. 특정 상황에서 당신이 이상한 곳으로 갔을 때 물건을 잃어 버릴 수 있다는 것을 알기 때문이다. 나는 몇 가지 일을 바로 잡을 때 더 확신한다.) – cesoid
git gc를 실행하면 사라지지 않을 것입니다. @ MagnusSkog의 답은 맞아야합니다 : 리모컨에 존재하지 않으면 삭제됩니다. 정말로, _really_, ___really___은 더 이상 필요하지 않다는 것을 확신합니다. refs-packed 파일에서 직접 삭제할 수 있습니다. – knittl