몇 가지 유용한 git 별칭

2670 단어 git
우리는 프로젝트 추적을 위해 YouTrack을 사용하고 있으며 해당 YouTrack 문제 ID로 기능 분기의 이름을 지정하고 있습니다. 그 이유는 우리가 그것에 많은 자동화를 구축했기 때문입니다.

새 기능 분기를 생성할 때 항상 비어 있는 상태로 시작합니다. YouTrack ID로 센티넬 커밋을 호출하면 분기 시작점을 쉽게 식별할 수 있고 스크립팅에도 많은 도움이 됩니다.

이 초기 빈 커밋을 잊지 않기 위해 이를 처리하는 작은 별칭을 만들었습니다(이 스크립트는 Windows 터미널에서 생성되었으며 Linux의 경우 기록 확장을 꺼야 할 수도 있음).

git config --global --replace-all alias.br "!f() { export YTID=$1 && shift && git switch -c $YTID && git commit -m \"$YTID: Starting point \" --allow-empty;};f"


나중에 커밋이 포함된 원래 브랜치를 식별할 수 있도록 커밋 앞에 항상 브랜치 이름을 붙입니다. 병합 및 선별 시나리오의 경우 매우 유용할 수 있습니다.

git config --global --replace-all alias.cm "!f() { IFS=$'\n' && for L in $(git log --format=oneline --no-decorate); do YTID=`sed -n -E 's/^[0-9abcdef]+.([A-Z]+\-[0-9]+): Starting point.*/\1/p' <<< $L`; [[ -n ${YTID} ]] && break; done; git commit -m \"$YTID: $@\"; }; f"


실제로 기능에 대한 작업을 시작할 때 간단히

git br ISSUE-11


커밋할 때:

git cm "some meaningful commit message"


git log로 확인한 후:

e819c10 ISSUE-11: Third commit
87c7b4c ISSUE-11: Second commit
78fd4fc ISSUE-11: First real commit
7717e9c ISSUE-11: Starting point
8f6737d (origin/main, main) ISSUE-10 Lastly merged feature with squash commit

좋은 웹페이지 즐겨찾기