Dev/Git (3) 썸네일형 리스트형 [Git Hooks] 브랜치 이름으로 커밋 메시지 규칙 확인 진행중인 프로젝트에서는 git 정책으로 커밋 메시지가 이슈 번호로 시작하도록 되어있다.보통은 커밋 메시지를 정책에 맞게 작성해서 문제가 없지만, 종종 부랴부랴 커밋하다 보면 이슈 번호를 잘못 적거나 오타가 발생한 그대로 커밋해서 엉뚱한 이슈 번호가 기록되기도 한다. 😱커밋 직후에 바로 인지하면 바로 수정하면 되지만 시간이 흐른뒤 여러 커밋이 생긴뒤에는 수정하기 힘들다. 이런 문제를 예방하고자 git hooks 기능을 사용해서 커밋되기 전에 커밋 메시지가 정책에 맞게 작성됬는지 확인할 수 있도록 해보았다.🙌commit-msg hookcommit-msg hook은 git의 hook 기능 중 사용자가 커밋 메시지 작성을 완료한 후, 커밋이 최종적으로 생성되기 직전에 실행되는 hook이다.스크립트가 0으로 .. [Git Troubleshooting] git restore 해도 변경사항이 없어지지 않는 문제 해결 방법 TL;DR증상: 내용은 안 바꿨는데 git status에 계속 modified가 뜬다. 그래서 git restore를 해도 없어지지 않는다.😱주요 원인: 파일의 권한 설정(filemode) 또는 줄 끝 문자(LF/CRLF) 불일치.빠른 해결: 권한 추적 불필요하면 core.filemode=false. 줄 끝 문자는 .gitattributes로 LF 고정 후 git add --renormalize .Git을 쓰다가 건드리지도 않은 파일이 modified로 표시되는 문제를 만났다.'유령 변경'이라고 불리는 문제인데, 특히 Windows↔Linux 사이를 오가는 .sh 파일에서 자주 발생한다고한다.이 글에서는 왜 이런 ‘유령 변경’이 생기는지, 그리고 어떻게 해결하는지 정리한다.증상파일을 변경하지 않았는데 .. Git hooks pre-push로 tag name 변경 개발팀 미팅 중에 현재 구축 중인 CI/CD 시스템에서 회귀(regeression) 테스트 실행에 git tag를 이벤트 트리거로 사용한다는 말을 들었다.특정 네이밍의 tag가 push 되면 회귀 테스트가 동작하는 시나리오인데, 네이밍 특성상 여러 명이 회귀 테스트 실행을 시도하면 같은 tag 명이 push 되어 테스트 실행이 비정상적으로 될 우려가 있다고 생각했다.그래서 해결방안으로 tag push 전에 git hook으로 tag에 고유값을 넣어 중복을 막을 수 있을 것 같다고 의견을 내었고,이 작업은 고대로 나에게 할당되었다. (껄껄..) 목표는 tag 가 push 되기전에 회귀 테스트 트리거 용 tag를 획득해서 tag 가 위치하는 commit object name을 tag 명에 붙여서 push를 .. 이전 1 다음