매일 밤 자정에 저장소를 Github에 푸시할 수 있기를 원합니다. 나는 Github이 백업 서비스가 아니라는 것을 알고 있으며 그렇게 되기를 원하지 않습니다. 나는 단지 나와 내 팀에 적합한 Github의 최고의 최신 버전을 원할 뿐입니다. 내 생각은 이렇습니다.
저장소를 정상적으로 Github에 푸시하는 Bash 스크립트를 만듭니다.
Crontab에서는 매일 자정에 스크립트가 실행됩니다.
이것이 그것을 사용하는 가장 좋은 방법입니까? 그렇다면 쉽게 할 수 있을 것 같습니다.
내 다음 질문 :) 저장소가 푸시된 후 나에게 이메일이 전송되기를 원하므로 다음과 같은 이메일이 전송됩니다. "저장소 푸시됨..ok" 또는 문제가 발생하면 이를 알려줍니다. 가능합니까? 그렇다면 누구든지 이 작업을 수행하는 방법에 대한 몇 가지 예를 제공할 수 있습니까?
누군가가 도울 수 있기를 바랍니다 :)
답변1
harish.venkat 링크에 설명된 대로
/path_to_script
새 파일을 추가하고 커밋하고 푸시하는 스크립트를 만듭니다 .
#!/bin/sh
cd /location/of/clone
git add *
if [[ $? != 0 ]] then
mail -s "add failed" [email protected]
exit 1
fi
git commit -a -m "commit message, to avoid being prompted interactively"
if [[ $? != 0 ]] then
mail -s "commit failed" [email protected]
exit 1
fi
git push
if [[ $? != 0 ]] then
mail -s "push failed" [email protected]
exit 1
fi
mail -s "push ok" [email protected]
스크립트를 실행 가능하도록 변경하고,
chmod a+x /path_to_script
crontab -e
다음 줄을 사용 하고 추가하십시오.
# run every night at 03:00
0 3 * * * /path_to_script