오프라인일 때 현재 상태가 준비되도록 가끔씩 모든 저장소를 가져오는 cronjob을 설정할 생각입니다. 다음과 같은 내용입니다(더 나은 가독성을 위해 래핑됨).
find $HOME -name .git -type d -printf "%h\0" |
parallel --gnu -0 --delay 0.2 --jobs 100 --progress \
'cd {}; git fetch --all --quiet'
인수가 실패하면 어떻게 되는지 상관하지 않습니다. 다음 번에는 성공할 수도 있습니다. 어쩌면 오류 출력을 기록할 수도 있습니다. 내 질문은 다음과 같습니다
- 커밋할 때 백그라운드 프로세스가 Git 저장소로 가져오면 어떻게 되나요?
parallel
정말 안전한 스위치를 만들기 위해 다른 스위치를 추천해 주실 수 있나요 ?
답변1
저는 2년 동안 아무런 문제 없이 백그라운드에서 로컬 Git 저장소를 가져오고 있습니다. 현재 crontab에는 다음과 같은 내용이 포함되어 있습니다.
savelog -n -c 400 ~/log/git-fetch.log
find ~/git -type d -execdir [ -d '{}/.git' ] \; -print -prune |
parallel --gnu --keep-order \
"date; echo {}; cd {}; git fetch --all --verbose" \
>> ~/log/git-fetch.log 2>&1
(그러나 한 줄에).