글을 private 저장소에서 쓰더라도 바로 공개하고 싶지 않을 때가 있습니다. 이번 블로그는 그 지점을 기준으로 설계했습니다.
핵심 규칙
- 글은
blog-posts저장소에서 작성한다. - 공개 기준은
blog저장소에 커밋된 submodule SHA다. blog-posts에 push만 해서는 production이 바뀌지 않는다.
이 방식이 좋은 이유
운영 중인 사이트는 항상 blog 저장소가 가리키는 특정 콘텐츠 버전을 사용합니다. 그래서 어떤 글 버전이 공개되었는지 추적하기 쉽고, 의도하지 않은 변경이 바로 노출되지 않습니다. 배포 실패가 나더라도 어느 커밋을 다시 가리켜야 하는지 판단하기도 수월합니다.
게시 순서
blog-posts에 글을 커밋한 뒤 blog 저장소에서 submodule 포인터를 원하는 커밋으로 업데이트하면 됩니다. 그 커밋이 main에 반영될 때만 배포가 일어납니다.