GitHub 블로그 테마 이주 #1 - 테스트 서버 구성
GitHub 블로그 테마 이주 #1 - 테스트 서버 구성
들어가며
GitHub 블로그를 처음 만들 때 Jekyll(지킬) 기반의 Alembic 테마를 사용하였습니다. 처음 하는 것이라 어떤 것이 있는지 잘 몰랐습니다. 검색을 해 보니 간단한 테마라는 이야기에 리포지토리(repository)를 클론(clone)해서 사이트를 만들었습니다.
Alembic은 기본 기능에 충실한 테마입니다. 아쉽게도 유지보수가 뜸한 상황입니다. (간결해서 필요가 없기 때문일지도 모릅니다)
이리저리 알아보니 Minimal Mistakes라는 테마가 기능이 풍부하고, 유지보수도 활발한 듯 하여, 이 테마로 이주하려고 합니다. 매뉴얼도 충실하게 잘 정리되어 있습니다.
Minimal Mistakes는 블로그 용도에 적합하게 맞춘 테마입니다. 제가 운용하는 사이트는 블로그라기보다는 정보 제공 사이트에 가깝습니다. 하지만 몇 군데 수정하면 사용하는데 무리가 없을 듯 해서 진행하기로 하였습니다.
Alembic을 사용하면서 여기저기 필요에 의해 조금씩 고쳤는데, 이에 대한 상세한 기록을 남겨 놓지 않았습니다. 이로 인해 이주를 하면서, 어디에 손을 대야 하는지 기억하기 힘들었습니다.
향후 비슷한 상황이 생기면 보다 수월하게 작업을 진행할 수 있도록 작업한 내용을 상세하게 기록으로 남깁니다.
관련글
테스트 서버 구성
기존 데이터 복사
사이트 설정
커스터마이징 (Part 1)
커스터마이징 (Part 2)
운영 사이트에 반영
테스트 사이트의 수정 사항 일괄 반영
개발용 사이트 생성 및 협력자 설정
지금 잘 운영되고 있는 사이트에 다른 테마를 덧씌우는 것은 위험할 수 있습니다. 테마마다 설정하는 변수값이 다르고, 커스터마이징해 놓은 부분이 날아갈 수 있기 때문입니다.
이런 이유로 테스트를 위한 추가 GitHub 블로그를 만들어서 작업하는 것이 안전합니다.
테스트용 계정 생성
GitHub는 무료 플랜인 경우 계정 하나당 하나의 사이트만 운영할 수 있습니다. 테스트를 위해서는 추가 사이트가 필요합니다. 이전에 만들어 둔 구글 계정을 이용하여 QuantKangAlpha라는 아이디로 GitHub 계정을 만들었습니다. 이하에서는 계정 이름이 긴 관계로 QuantKang은 Quant로 QuantKangAlpha는 Alpha로 적습니다.
테마 포크(fork)
Alpha는 Minimal Mistakes를 포크하여 Alpha.github.io라는 리포지토리를 만들었습니다. [GitHub 계정].github.io라는 이름으로 리포지토리를 만들면, 해당 리포지토리의 내용을 이용하여 [GitHub 계정].github.io라는 사이트가 자동 생성됩니다.
추가한 데이터가 없어서 그런지 1분만에 사이트가 개설되었습니다. 사이트 주소는 대문자의 경우 소문자로 치환되어 생성됩니다.
협력자 초대와 수락
Alpha는 테스트를 위한 계정입니다. 같은 사람이지만 실제 작업은 Quant가 합니다. Quant가 Alpha의 리포지토리를 수정하기 위해서는 권한이 필요합니다. 이를 위해서 Alpha는 Quant에게 협력자 초대 요청을 하고, Quant는 이를 수락합니다. 협력자 초대에 대한 상세한 설명은 개인 리포지토리에 협력자 초대를 참고하기 바랍니다.
리포지토리 클론(clone)
Quant는 이미 공개된 Alpha의 리포지토리를 클론 할 수 있습니다. 또한 초대에 응했기에, 수정한 코드를 리포지토리에 반영하는 푸시(push)도 할 수 있습니다.
git clone https://github.com/QuantKangAlpha/QuantKangAlpha.github.io.git
Cloning into 'QuantKangAlpha.github.io'...
remote: Enumerating objects: 16950, done.
remote: Total 16950 (delta 0), reused 0 (delta 0), pack-reused 16950
Receiving objects: 100% (16950/16950), 44.33 MiB | 7.62 MiB/s, done.
Resolving deltas: 100% (10115/10115), done.
이제 권한이 설정되었는지 확인을 위해 파일을 하나 수정해 푸시해 보겠습니다. Alpha의 테스트 사이트는 개발용이므로 검색에 노출되지 않기를 원합니다. 이를 위해서는 robots.txt
를 설정해야 합니다. 현재 robots.txt
는 검색 허용 상태입니다.
robots.txt
는 리포지토리에 없지만, Jekyll이 자동으로 생성합니다. 비슷하게 sitemap.xml
이나 feed.xml
도 자동으로 생성하도록 기본 설정되어 있습니다.
만일 동일한 이름의 파일이 해당 리포지토리에 이미 있으면, 이를 우선하여 사용합니다. 그러니 아래와 같은 robots.txt
파일을 만들어서 푸시해 보겠습니다.
User-agent: *
Disallow: /
git add -A
git commit -m 'Add robots.txt to block all crawlers'
git push
푸시가 제대로 되었고, robots.txt
도 원하는 대로 변경되었습니다. 이제 테스트용 GitHub 블로그가 생성되었습니다.
댓글
댓글 쓰기