2013-03-24 3 views
4

나는 백업 시스템을 만들 힘내을 사용하고 있습니다.GIT - 자식 - 추가 오류 (잘못된 파일 번호)

난 그냥 디렉토리를 만들고 거기에 자식을 초기화했습니다. 나는이 응답 오류 얻을

git add -u *.pdf 

와 함께 무대에 비 추적 파일을 추가하려고 할 때

git init 

:

sh.exe": /bin/git: Bad file number

으로 추가 정보를, 나는 ~ 4500의 목록을 가지고 untracked 파일을 하나씩 추가하려고하면 오류 응답이 나타나지 않고 파일이 무대로 전송됩니다.

사람이이 문제를 해결하는 방법을 알고 그리고 왜 발생 하는가? 이 모든 추적되지 않은 파일을 추가해야하지만 "원숭이 작업"방식으로이를 수행하고 싶지는 않습니다. 하나씩 추가하십시오.

+0

나는 실제로 바보 같은 실수를 저질 렀다. 와일드 카드를 작은 따옴표로 묶지 않고 git-add 명령을 작성했습니다. 그리고 @GoZoner가 말했듯이, 나는 '-u'옵션의 의미를 잘못 이해했다. – luisfsns

답변

6

그것은 단지 당신이 이미 추적하는 파일을 추가합니다으로 당신은 '-u'을 원하지 않는다. git init 이후에는 아직 아무 것도 추적하지 않습니다.

-u, --update: Only match against already tracked files in the index rather than the working tree. That means that it will never stage new files, but that it will stage modified new contents of tracked files and that it will remove files from the index if the corresponding files in the working tree have been removed.

사용 -A (또는 --all) 대신 : 문서에서. 당신이 쓸 때

특정 문제에 대한

는 '* .PDF'쉘은 그에 4500 개 파일을 확장합니다. 그 많은 수의 파일은 아마도 쉘 명령 행 입력 버퍼를 오버플로합니다. 오류가 발생합니다. 당신은 몇 가지 할 수있는 :

git add -A    # adds everything at once 

또는

for file in *.pdf; do git add -A $file; done # add files one by one 

명령 행 문제를 방지합니다 이러한 제안의 두

을; 첫 번째가 선호됩니다.

+0

체크 표시를하고 투표를하십시오! – GoZoner

+1

나는 실제로 바보 같은 실수를 저질 렀다. 와일드 카드를 작은 따옴표로 묶지 않고 git-add 명령을 작성했습니다. 문제는 오버플로가 아니 었습니다. 하지만 설명이 도움이되었습니다. 전 망할 자식이에요. 시간을 낭비해서 죄송합니다. 나는 방금 그것을 읽고 시작했습니다. 오늘 (http://git-scm.com/book/en/) 브라질에서 많은 감사를드립니다! – luisfsns

+1

나는 위 표를 추가 할 수 없으며 충분한 명성이 없습니다. 적어도 15 점이 필요합니다. 그러나 내가 그들을 데려 올 때, 나는 여기로 돌아와 당신에게 표를 준다. 당신이 전달하는 경우 덕분에'* 자식 add''에 .pdf'는 자식은'*'과하지 않습니다 오버 플로우를 확대 할 – luisfsns