Skip to content

자동커밋

기존 TIL Repository는 파일을 추가하거나 수정한 뒤 수동으로 커밋하는 방식으로 운영했다.

하지만 혼자 작성하다보니 버전 관리에 대한 이점도 크게 없고, 생성이나 수정에 대한 커밋을 각각 나눠서 하는게 번거로워서 그냥 하루에 한 번씩 local crontab을 돌려 자동으로 커밋하도록 하는 쉘 스크립트를 작성하였다.

크게 복잡한 내용은 없고 그냥 git . add 한 뒤 커밋하는 것이 전부이다. 단, 작성중이어서 커밋하면 안되는 파일은 접두사에 +를 붙여서 표기하고 gitignore에 커밋되지 않도록 설정해줬다. +로 정한 이유는 명령어상 다른 특별한 의미가 없으면서 파일명 앞에 들어갈 일이 없을 것 같은 기호였기 때문이다.

+autocommit.sh를 정의한다.

#!/bin/bash
Y=$(date +%Y)
M=$(date +%m)
D=$(date +%d)
Ymd=$Y-$M-$D
git pull
git add .
git commit -m "$Ymd"
git push https://rlaisqls:${GITHUB_TOKEN}@github.com/rlaisqls/TIL.git

pre hook과 커밋 script를 excutablbe로 지정해준다.

Terminal window
chmod +x +autocommit.sh

그리고 crontab -e를 사용해 매일 23시에 한번씩 커밋하도록 설정한다.

Terminal window
$ crontab -l
0 23 * * * /Users/rlaisqls/Documents/github/TIL/+autocommit.sh