Visual Studio Code - 여전히 VS Code에 표시되는 GitHub에서 삭제된 분기를 제거하시겠습니까?
VSCode에서 풀 요청을 수행하고 GitHub에서 분기를 삭제한 후에도 해당 분기는 Visual Studio Code에 계속 표시됩니다.분기를 선택하면 예상대로 오류가 표시됩니다.
현재 삭제된 분기를 VSCode에서 제거하려면 어떻게 해야 합니까? 자동으로 제거할 수 있습니까?
이 기능은 의도적인 것으로 보입니다.Github에서 삭제된 모든 원격 브랜치를 제거하는 올바른 방법은 다음 명령을 실행하는 것임을 알게 되었습니다.
git fetch --prune
그런 다음 비주얼 스튜디오를 다시 시작하여 명령 팔레트에서 분기를 제거합니다.
Command Pallet(Ctrl-Shift-P)을 연 다음 Git: Delete Branch...를 선택하여 Visual Studio Code에서 로컬 분기를 제거할 수 있습니다. 그런 다음 목록에서 적절한 분기를 선택하여 로컬 분기를 삭제할 수 있습니다.
명령 팔레트(Ctrl+Shift+P)를 열고 Git: Fetch(자르기)를 선택합니다.
이 기능은 2018년 11월 20일 VS Code에 통합되었습니다.
GitHub에서 제거된 분기는 정상입니다...GitHub에서 방금 제거되었습니다.컴퓨터에 분기의 로컬 복사본이 남아 있습니다.로컬 분기 실행을 삭제하려면 다음과 같이 하십시오.git branch -d the_local_branch
Code를 사용하여 할 수 있습니다. VS Code에서는 VS Code를 사용하여 터미널을 참조하십시오.View: Toggle Integrated Terminal
명령 및 실행 명령을 사용합니다.
지점 관리에 대한 자세한 내용은 git 설명서 - https://git-scm.com/book/be/v2/Git-Branching-Branch-Management 를 참조하십시오.
다음 명령을 실행하기만 하면 됩니다.
git remote prune origin
당신이 할 수 있는 추가적인 것, 왜냐하면 그것을 위해 터미널을 여는 것은 때때로 귀찮기 때문입니다.vcode에서 작업을 추가할 수 있습니다.
이를 위해 다음 단계를 수행하십시오.
- VSode View에서 > 명령 팔레트(cmd/ctrl + Shift + P)
- 작업 구성 유형
- 템플릿에서 tasks.json 파일 생성을 선택하면 .vscode 폴더 아래에 새 파일이 생성됩니다.
- 내부 태스크 배열에 다음을 추가합니다.
"label": "Git Prune", "type": "shell", "command": "git remote prune origin", "problemMatcher": [] }
사용 방법:
- 명령 팔레트 열기
- 작업 실행을 입력하고 선택합니다.
- 깃 자르기 선택
참조:
없어요git fetch --prune
VSCode를 다시 시작합니다.
VSCode 1.52(2020년 11월)를 통해 다음과 같은 이점을 얻을 수 있습니다.
Git: 가져오기 시 자르기
사용
git.pruneOnFetch
됩니다.git fetch --prune
원격 참조를 가져올 때.
GitHub에서 삭제된 추가 분기는 로컬에서 더 이상 없습니다.
용도:
{ "git.pruneOnFetch": true }
은 설은정입니다.
false
결석으로이는 다음을 추가할 것입니다.
--prune
모든 깃 페치에 대한 플래그입니다.
저는 명령 팔레트에서 Git Fetch(Prune)를 사용했기 때문에 병합된 로컬 분기를 어떻게 삭제할 수 있는지에 대한 질문으로 해석했습니다.이것은 "핵"으로 여겨질 수 있지만, 제가 사용하는 것입니다.PowerShell 터미널에서 다음 작업을 수행합니다.
$branches = (git branch --merged).replace(" ", "").replace("*", "") | ? { $_ -ne "develop" -and $_ -ne "master" }
foreach ($branch in $branches) { git branch $branch -d }
PoSH에 익숙하지 않은 경우에는 첫 번째 줄이 (개발 및 마스터를 제외한) 모든 병합된 분기의 이름을 가져오고, 두 번째 줄은 해당 목록을 순환하여 "git branch -d"를 실행합니다.분기가 완전히 병합되는 한 다음이 표시됩니다.
Deleted branch <branch name> (was <commit ID>).
지점별로때때로 삭제되지 않는 분기와 마주칠 수 있습니다. 이렇게 되면 삭제해도 안전합니다(예: 저장되지 않은 로컬 작업이 손실되지 않음). 다음을 실행할 수 있습니다.
git branch <branch name> -D
대문자 D - 로컬 분기를 강제로 삭제합니다.
Visual Studio 2019(예: 16.8.6)의 최신 버전에서는 아래와 같이 설정으로 이동하여 Git 설정을 찾아야 합니다.
이걸 고칠 방법을 찾았어요따라서 Github repo에 연결된 원격을 제거한 다음 원격을 다시 추가해야 합니다.
Github에서 삭제된 모든 분기는 더 이상 vcode에 표시되지 않습니다.라고 가정하면,origin
원격 repo의 이름입니다.
git remote remove origin
그리고나서
git remote add origin git@github.com:your-username/repo-name.git
다음을 사용하여 모든 로컬 분기(마스터 제외)를 제거할 수 있습니다.
git branch -r | grep -v "master" | xargs git branch -D
그리고 다음과 같이 표시되는 모든 분기를 제거할 수 있습니다.origin/XXXX
되었지만 VSCode에서 이미 되었습니다.origin
매개 변수:
git fetch --prune
참고:
위의 첫 번째 명령(https://stackoverflow.com/a/52006270/3120163) 에서 제공):
- 모든 분기를 나열합니다.
- 목록에서 마스터 분기 제거
- 목록에서 분기 삭제
더 짧은 명령은 다음과 같습니다.
git fetch -p
다비드후에 의한 이 방법은 약간의 터치로 아래와 같습니다.
이 명령은 여전히 V 코드에 표시되는 Github에서 삭제된 분기를 제거합니다.중괄호 안에 있는 것이 원격 repo의 이름이라고 가정합니다.
git 원격 제거 오리진
그리고나서
git remote add origin git@github.com :your-message/repo-name.git
또는 V 코드에서 수동으로 제거할 수 있습니다.
V 코드 왼쪽에 있는 소스 제어 아이콘을 클릭합니다.
추가 아이콘 또는 추가 작업을 클릭한 다음 "Romote"를 클릭하면 "원격 추가" 또는 "Romote 제거"가 표시됩니다.
"Remove romote"를 클릭하면 V 코드에 있는 모든 원격 목록이 표시됩니다. 그런 다음 제거할 목록을 선택하고 "Enter"를 누를 수 있습니다.
이 접근 방식은 vscode에서 제기된 문제를 해결하는 방법에 직접적으로 답하지 않습니다.그러나 동일한 결과를 얻을 수 있는 유효한 방법입니다.
깃이 빠진 가지를 사용합니다.
이것이 누군가에게 도움이 되기를 바랍니다.
언급URL : https://stackoverflow.com/questions/38512124/visual-studio-code-remove-branches-deleted-on-github-that-still-show-in-vs-cod
'programing' 카테고리의 다른 글
SpringBoot + ActiveMQ - 신뢰할 수 있는 패키지를 설정하는 방법 (0) | 2023.07.04 |
---|---|
동일한 mongodb 쿼리에서 개수 및 고유 개수별 그룹화 선택 (0) | 2023.07.04 |
GitHub에서 호스팅되는 Spring Cloud Config Server에서 repo 액세스 시 인증 문제가 발생했습니다. (0) | 2023.07.04 |
속성 "_id" 하나만 반환합니다. (0) | 2023.07.04 |
PL/SQL에서 날짜 형식을 MM/DD/YYYY에서 YYY-MM-DD로 변경하는 방법은 무엇입니까? (0) | 2023.07.04 |