폴더 목록이 있는데 그 중 일부는 git 저장소입니다. 백업하기 위해 다음 rsync
명령을 시도했습니다.
LANG=EN_us.UTF-8 rsync -ravdhHP --delete --files-from=rsyncFolders.txt --ignore="node_modules" --ignore="vendor" --include .git --exclude-from="$(if [ `git ls-tree -d --name-only master SRC | wc -l` -eq 1 ]; then git -C SRC ls-files --exclude-standard -oi --directory > .git/ignores.tmp && echo .git/ignores.tmp; fi)" --exclude node_modules --exclude vendor . "/media/pcmagas/79B56D48414DEE1B/pcmagas"
라는 파일에 백업할 폴더가 있고 rsyncFolders.txt
다음과 같은 내용이 있습니다.
folder_a
folder_b
somefile_txt
code
해당 code
폴더 에는 일부 .git
저장소가 있고 junk
그 안에 많은 파일과 폴더가 있으므로 백업에 저장하지 않으려고 합니다. 따라서 내 백업 논리는 다음과 같습니다.
- 폴더가
.git
저장소 인 경우.gitignore
d 파일을 보관하지 마세요. - 그렇지 않은 경우
*.class
일부 Java 파일이 있는 경우 모든 파일이 무시됩니다. (사용해 본 일부 샘플 코드 조각) - 어떠한 상황에서도 PHP 또는 JavaScript 프로젝트를 백업하지 마십시오
node_modules
.vendor
위의 명령을 실행하면 다음 오류가 발생합니다.
fatal: Not a git repository (or any of the parent directories): .git
rsync: --ignore=node_modules: unknown option
rsync error: syntax or usage error (code 1) at main.c(1572) [client=3.1.1]
어떻게 하는지 아시나요?