페어 코딩 하시나요? ( GitHub에 공동 작업자 기록하기 )

페어 코딩을 할 기회가 종종 있습니다. 페어 코딩을 하게 되면 좋은 점이 있는데요. 물론 나쁜 점도 있어요. 이 얘기는 나중 더 자세히 적을 기회가 있을 것 같습니다. 아무튼 페어 코딩을 종종 하는데, 이때 공동 작업자를 기록하기가 애매합니다. 기본 적으로 Git에는 저자를 한 명 기록하게 돼있으니까요, 하루는 이 사람, 하루는 저 사람으로 기록하는 규칙을 정하자니 뭔가 불편합니다. ( 사실 이렇게도 해봤는데, 서로 자기 이름을 기록하지 않으려 하더라고요. ) 그래서 공동작업을 기록하는 방법을 찾아보기로 했습니다. 우선 저는 GitHub을 사용하고, 리눅스, 혹은 Mac에서 주로 개발합니다. 지금 설명하는 방법은 윈도우에서는 해보지 않았습니다. ( 되겠죠? 뭐 ) 그럼 공동 작업을 기록하는 방법을 찾아서..

GitHub Action을 이용하여 작업중인 PR의 Merge 방지하기.

GitHub에서 개발을 하다 보면 아직 완료되지 않은 PR(Pull Request)이 누군가의 선의 혹은 실수로 Merge 되는 경우가 종종 발생합니다. 이런 불상사를 막기 위해 여러 시도들을 해봤는데요, 제목에 WIP를 표시해서 작업 중이라고 표시하기, 리뷰가 완료되지 않은 PR은 메인스트림으로 머지되지 않게 설정하기 등등을 해보지만, 물리적으로 이런 불상사를 막지 못합니다. ( GitLab에는 이런 것을 막는 기능이 있네요. ) GitHub에서 GitHub Action을 이용해서 이런 작업중인 PR이 머지되지 않도록 하는 방법을 알아봤습니다. 1. GitHub Action이란? GitHub 에서 제공하는 CI/CD를 관리할 수 있는 Workflow를 정의할 수 있는 기능이라고 할 수 있습니다. 즉 빌..

뽀대나는 커밋 만들기 ( Signed Commit )

GitHub에서 소스코드를 보다 보면 종종 아래 그림과 같은 Verified라는 배지가 붙은 커밋을 볼 수 있습니다. 작성자가 커밋에 본인이 직접 작성한 것이라고 서명(Sign)한 커밋을 나타 냅니다. 이러한 서명은 gpg 인증을 통해서 할 수 있는데, 커밋을 어떻게 하여야 하며, GitHub에서는 어떻게 하는지 설명합니다. 왜 커밋에 사인을 해야 하는가? Git을 처음 접했을 때, 가졌던 의문 중 하나가 왜? 커밋의 작성자에 대한 검증을 하지 않는가? 였습니다. 좀 더 설명해 보자면 git을 처음 설치하게 되면 대부분 다음과 같은 설정을 하게 됩니다. git config --global user.email bitlog@tistory.com git config --gloabl user.name bitlo..