병합되지 않은 Git 분기를 찾으십니까?
저는 많은 지점이 있는 Git 저장소를 가지고 있는데, 일부는 이미 병합되었고 일부는 그렇지 않습니다.지점 수가 상당히 많기 때문에 어떤 지점이 아직 병합되지 않았는지 확인하려면 어떻게 해야 합니까?저는 "문어" 병합을 하고 이미 병합된 지점을 다시 병합하는 것을 피하고 싶습니다.
사용해 보십시오.
git branch --merged master
주석에 표시된 작업을 수행합니다(통합된 분기 나열).master
) 다음을 사용하여 역방향을 풀업할 수도 있습니다.
git branch --no-merged master
지정하지 않은 경우master
예를 들어...
git branch --merged
그러면 현재로 병합된 분기가 표시됩니다.HEAD
(그러므로 사용 중인 경우)master
첫 번째 명령에 해당합니다. 사용 중인 경우foo
와 맞먹습니다git branch --merged foo
).
또한 다음을 지정하여 업스트림 분기를 비교할 수 있습니다.-r
플래그 및 확인할 참조(로컬 또는 원격일 수 있음):
git branch -r --no-merged origin/master
사용할 수도 있습니다.-r
마스터에 병합되지 않은 원격 분기를 표시하는 매개 변수:
git branch -r --merged master
git branch -r --no-merged
분기가 이미 병합된 경우 분기를 다시 병합해도 아무런 효과가 없습니다.따라서 이미 병합된 지점을 "재합병"하는 것에 대해 걱정할 필요가 없습니다.
당신의 질문에 대답하기 위해, 당신은 간단히 발행할 수 있습니다.
git branch --merged
병합된 분기를 보려면 또는
git branch --no-merged
병합되지 않은 분기를 확인합니다.현재 분기는 암시되지만 원하는 경우 다른 분기를 지정할 수 있습니다.
git branch --no-merged integration
에 아직 병합되지 않은 분기를 표시합니다.integration
분점.
아래 스크립트는 모두를 찾습니다.origin/*
현재 지점보다 앞에 있는 지점
#!/bin/bash
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
echo -e "Current branch: \e[94m$CURRENT_BRANCH\e[0m"
echo ''
git branch -a | grep remotes/origin/ | while read LINE
do
CMD="git diff --shortstat remotes/origin/${CURRENT_BRANCH}...${LINE}"
if $CMD | grep ' file' > /dev/null; then
echo -e "\e[93m$LINE\e[0m" | sed 's/remotes\/origin\///'
$CMD
echo ''
fi
done
언급URL : https://stackoverflow.com/questions/12276001/find-unmerged-git-branches
'programing' 카테고리의 다른 글
임베디드 프로젝트용 C/C++ HTTP 클라이언트 라이브러리 (0) | 2023.06.09 |
---|---|
부동 소수점 번호 구문 분석:Catch All 알고리즘이 있습니까? (0) | 2023.06.09 |
'as const'를 유형과 결합하시겠습니까? (0) | 2023.06.09 |
Oracle 정규식에서 탐욕스럽지 않은 정량자가 작동하지 않는 이유는 무엇입니까? (0) | 2023.06.09 |
Oracle에서 행을 열로 동적으로 피벗 (0) | 2023.06.09 |