특정 분기에 대한 변경 사항만 보려면 Git 로그를 어떻게 실행합니까?
원격/마스터 분기를 추적하는 로컬 분기가 있습니다.실행 후git-pull
그리고.git-log
로그에는 현재 분기뿐만 아니라 원격 추적 분기의 모든 커밋이 표시됩니다.하지만 원격 지점에 변경 사항이 너무 많아서 현재 로컬 지점에 대한 커밋만 확인해야 합니다.
특정 분기에 대한 커밋만 표시하는 데 사용할 Git 명령은 무엇입니까?
주의:
구성 정보:
[branch "my-branch"]
remote = origin
merge = refs/heads/master
분기가 다음으로 생성되었다고 가정합니다.master
분기에 있는 동안(즉, 분기를 체크아웃한 경우):
git cherry -v master
또는
git log master..
분기에 없는 경우 다음과 같이 "git log" 명령에 분기 이름을 추가할 수 있습니다.
git log master..branchname
당신의 가지가 다음으로 만들어진 경우.origin/master
그럼 말하시오origin/master
대신에master
.
사용:
git log --graph --abbrev-commit --decorate --first-parent <branch_name>
이것은 대상 분기에만 해당됩니다(물론 --graph, --abbrev-commit --decorate는 더 연마합니다).
핵심 옵션은 다음과 같습니다.--first-parent
"합병 커밋을 볼 때 첫 번째 부모 커밋만 따릅니다." (https://git-scm.com/docs/git-log)
커밋 포크가 표시되지 않도록 합니다.
특정 분기에서 사용자가 수행하는 커밋만 수행하려면 다음 명령을 사용합니다.
git log branch_name --author='Dyaniyal'
제가 안고 있던 문제는 이것과 비슷하지만 마스터가 제 분기점보다 너무 앞섰기 때문에 기록이 유용하지 않다는 것입니다. (분기점으로 이동하는 데 시간이 너무 오래 걸립니다.)
약간의 시행착오 끝에, 이것은 제가 원하는 것을 대략적으로 주었습니다.
git log --graph --decorate --oneline --all ^master^!
막 뛰어가다git log origin/$BRANCH_NAME
Magit을 사용하는 사용자의 경우,l
그리고.=m
토글하다, 토글하다, 토글하다, 토글하다, 토글하다--no-merges
그리고.=p
토글하다, 토글하다, 토글하다, 토글하다, 토글하다--first-parent
.
그럼 그냥 치든지.l
현재 분기(커밋이 병합되지 않음)에서 내역의 끝까지 커밋을 다시 표시하거나 분기된 위치에서 로그를 종료하려는 경우master
히트를 치다o
및 유형master..
사용자 범위:
에서develop
지점, 그리고 최근 홍보물 목록을 보고 싶어 합니다.
PROMPT> git log --first-parent --pretty=oneline 0a805f46957a957161c5ed4e08081edeed9b91e7..6aae236484dc1881f5dbdef0f529eb95c6ef7bd5
0a805f46957a957161c5ed4e08081edeed9b91e7 Merged PR 1984/3: Fixed crash 2.
8d51abb53403e10e6484dc3c0569a5792f1x3734 Merged PR 1984/2: Fixed crash 1.
6aae236484dc1881f5dbdef0f529eb95c6efcbd5 Merged PR 1984/1: Downgraded from windows 11 to windows 3.11.
이것은 족제비 뉴에이지 GUI 측면의 답변이지만, 어쨌든, Xcode에는 그것을 위한 시각적 도구가 분명히 있습니다.
저는 lg1 룩앤필을 포함하도록 제안된 답변을 수정했습니다.
[alias]
lg1b = "!cd -- \"${GIT_PREFIX:-.}\" && CURRENT_BRANCH=$(git branch --show-current) && git log $CURRENT_BRANCH --graph --abbrev-commit --pretty='format:%C(bold blue)%h%C(reset) %C(bold green)(%ar)%C(reset) %s %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --decorate --not $(git for-each-ref --format='%(refname)' refs/heads/ | grep -v refs/heads/$CURRENT_BRANCH) #"
lg1 명령: Pretty Git 분기 그래프에 대한 내용을 참조하십시오.
git log $(git branch --show-current)
언급URL : https://stackoverflow.com/questions/4649356/how-do-i-run-git-log-to-see-changes-only-for-a-specific-branch
'source' 카테고리의 다른 글
Http 유틸리티.콘솔 응용 프로그램의 UrlEncode (0) | 2023.05.12 |
---|---|
명령줄에서 "빌드 및 아카이브"를 Xcode합니다. (0) | 2023.05.12 |
Swift에서 UI 레이블의 글꼴 크기를 변경하려면 어떻게 해야 합니까? (0) | 2023.05.12 |
nvm을 사용하여 노드를 올바르게 업그레이드하는 방법 (0) | 2023.05.12 |
Python 3.2 urllib2를 가져올 수 없음(가져오기 오류: urllib2라는 모듈이 없음) (0) | 2023.05.12 |