rsync를 사용하여 git 하위 디렉토리없이 디렉토리를 백업하는 방법


43

c하위 디렉토리를 제외한 모든 하위 디렉토리로 디렉토리 를 복사하고 싶습니다 ./git. 나는 그것을 사용하여한다 rsync:

echo "copy c and sh files "
rsync -a --include='*.c' --include='*.sh' --include='*/' --exclude='*' ~/c/ ~/Dropbox/Public/c
# remove .git directory = do not send it to dropbox. Thx to Tomasz Sowa
rm -rf ~/Dropbox/Public/c/.git

더 잘할 수 있습니까?

답변:


48

.git에 대한 명시 적 제외를 추가하십시오.

rsync -a --exclude='.git/' --include='*.c' --include='*.sh' --include='*/' --exclude='*' ~/c/ ~/Dropbox/Public/c

또 다른 옵션은 ~/.cvsignore제외하려는 다른 디렉토리와 함께 다음 행을 포함하여 작성 하는 것입니다.

.git/


잘 작동합니다. 고마워. 나는 성공하지 않고 몇 가지 옵션을 시도하고있었습니다.
Adam

@Adam :이 답변에 만족하면 왼쪽의 확인 표시를 선택하십시오.
goldilocks

경로를 지정하는 방법이 지정되어 --exclude있습니다. 문제가 있으면 이 답변을 확인하십시오 .
totymedli

32

당신은 사용할 수 있습니다 rsync --cvs-exclude. 또한 .git디렉토리 를 무시합니다 .

그러나 이것은 또한 coreMagento 소스 파일에서 발생하는 것으로 불리는 디렉토리를 무시 합니다.


12
"하지만 조심하세요 ..."+1
omikron

10
이것은 최상위 레벨 .git디렉토리에서는 작동 하지만 .git하위 모듈의 디렉토리에서는 작동 하지 않습니다 . 또한 같은 Git 파일을 무시하지 않습니다 .gitmodules.
maxschlepzig
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.