2012-01-11 4 views
1

커밋시 svn은 업데이트되지 않은 추가 파일을 추가하는 데 문제가 있습니다.커밋시 svn이 추가 파일을 추가합니다.

예 :

svn st 

이이 file1의 변화를 업로드하고 잘

file2, file3, file4으로이 항상 동일한 파일에 발생

svn commit 

변경되는 등 file1을 보여줍니다

file2, file3, file4 

어떻게하면 안되나요?

SVN 버전 :

서브 버전 명령 줄 클라이언트 버전 당신은 항상 당신이 svn:ignore 사용할 수있는 파일을 무시하고 싶지만 글쎄 1.6.6

+0

어쨌든'file2, file3, file4'가 변경 되었습니까? 아니면 항상 동일하고 어쨌든 커밋합니까? –

+0

svn commit을 시도해 볼 수 있습니까? – Johny

+0

'svn commit file1' 시도해 주시겠습니까? – Neil

답변

1

어떤 버전의 Subversion 클라이언트를 사용하고 있습니까?

pre-subversion 1.7 클라이언트에서 Subversion은 .svn 디렉토리에있는 파일 및 저장된 자료의 내용을보고 파일 변경 사항을 확인합니다. Subversion은 파일 자체의 속성과 내용을 비교하여 변경 사항을 확인합니다. 예를 들어,이 예에서,

$ svn up 
U file1 
U file2 
U file3 

, 적어도이 여섯 파일을 볼 수 있습니다 :

.svn/text-base/file1.svn-base 
.svn/text-base/file2.svn-base 
.svn/text-base/file3.svn-base 
.svn/prop-base/file1 
.svn/prop-base/file2 
.svn/prop-base/file3 
그것은 파일이 메이크처럼 (변경 여부를 결정하기 위해 타임 스탬프에 보이지 않는

가지고있을 것이다).

svn upsvn commit 모두 동일한 알고리즘을 사용하여 파일을 수정중인 것으로 기록할지 여부를 결정합니다.

디렉토리에있는 항목 목록을 포함하는 .svn/entries이라는 파일도 있습니다. 이렇게하면 Subversion이 추가 및 삭제를 추적 할 수 있지만 변경 사항을 감지하는 데는 사용되지 않습니다.

변경되지 않은 파일이 커밋되는 동안 문제가 발생했습니다. 그러나 이것은 항상 svn status 일 때 나타나며 파일 내용은 변경되지 않았지만 속성은 svn:merge info입니다.

문제는 매우 다르게 보입니다. 무엇보다도 svn status을 수행 할 때 변경 사항이 표시되지 않지만 커밋됩니다. 디렉토리에 svn -v log을 입력하면 어떻게 될까요? 파일이 변경된 것으로 표시됩니까? svn status -v을하면 어떻게 될까요? 무시 된 파일과 변경되지 않은 파일을 포함한 모든 파일이 표시됩니다.

서버가 커밋 할 파일을 결정하지 않고 변경된 파일을 서버에 알려주는 클라이언트입니다. 따라서 Subversion 클라이언트에 문제가 있습니다.

Subversion 클라이언트는 무엇이고 어떤 OS가 있습니까? 나는 Cgywin이 문제가 될 수 있음을 안다. 특히 당신의 작업 디렉토리를 Windows Subversion 클라이언트와 공유한다면 더욱 그렇다. 두 가지 다른 유형의 클라이언트 (예 : GUI 클라이언트 및 명령 행 클라이언트)간에 작업 디렉토리를 공유하는 데는 몇 가지 문제점이있을 수 있습니다. 예를 들어, VisualStudio의 AnkhSvn 클라이언트는 _svn 디렉터리를 만듭니다. TortoiseSVN은 표준 Subversion 커맨드 라인이 아닌 (올바르게 설정했다면) 그것들을 사용할 수 있습니다.

그리고 물론 1.7 명령 줄 클라이언트는 이전 명령 줄 클라이언트와 다른 방식입니다. 표준 1.7 명령 줄 클라이언트에서 .svn 디렉토리는 루트에만 있으며 파일의 내용이 변경되었는지 여부를 확인하기 위해 체크섬을 사용한다고 생각합니다.

죄송하지만 더 이상의 도움을 드릴 수 없습니다. 어쩌면 내가 너에게 무언가를 줬을거야? Subversion 클라이언트 및 OS에 대해 알려 주시면 도움이 될 것입니다. 또한 동일한 디렉토리에서 여러 Subversion 클라이언트를 사용하는 경우 알려주십시오. 그것은 단서 일 수도 있습니다.

나는 $HOME/.subversion/conf으로 들어가서 차이를 만들 수있는 설정이 있는지 살펴 보았지만이 동작을 일으키는 원인은 찾지 못했습니다.

+0

나는 이것을 아침에 시험 할 것이다. 고마워. –

0

그들은 당신이 파일을 경우 때로는 변경하고 당신은 소스 제어하에 그들을 가지고 싶습니다. 나는 svn diff file1을 할 것이고 거기에서 갈 것입니다. 어떤 유형의 파일이고 diff의 결과는 무엇입니까?

+0

을 커밋 할 수 있지만 아무 것도 그들이 svn의 합계 경우 일년에 두 번 –

+0

파일로 변경되었습니다 그들은 svn diff 출력이 있어야합니다 변경했다고 말했어? –

+0

@PhillPafford 변경 될 수 있습니다 .PDF 파일은 – Grammin

관련 문제