SVN이 계속 충돌합니까?


284

이 디렉토리가 충돌하지 않게하려면 어떻게해야합니까? "그들의"또는 "광산"등을 사용하여 해결되는지는 상관하지 않습니다.

PS C:\Users\Mark\Desktop\myproject> svn ci -m "gr"
svn: Commit failed (details follow):
svn: Aborting commit: 'C:\Users\Mark\Desktop\myproject\addons' remains in conflict

PS C:\Users\Mark\Desktop\myproject> svn resolve --accept working C:\Users\Mark\Desktop\myproject\addons
Resolved conflicted state of 'C:\Users\Mark\Desktop\myproject\addons'

PS C:\Users\Mark\Desktop\myproject> svn ci -m "grr"
svn: Commit failed (details follow):
svn: Commit item 'addons' has copy flag but an invalid revision

PS C:\Users\Mark\Desktop\myproject> svn update
   C addons
svn: Can't move 'addons\debug_toolbar\templates\debug_toolbar\.svn\tmp\entries' to 'addons\debug_toolbar\templates\debug
_toolbar\.svn\entries': The file or directory is corrupted and unreadable.

PS C:\Users\Mark\Desktop\myproject> svn cleanup

PS C:\Users\Mark\Desktop\myproject> svn update
Skipped 'addons'
At revision 51.
Summary of conflicts:
  Skipped paths: 1

PS C:\Users\Mark\Desktop\myproject> svn ci -m "grrr"
svn: Commit failed (details follow):
svn: Aborting commit: 'C:\Users\Mark\Desktop\myproject\addons' remains in conflict

93
대답은 다음과 같습니다. [svn resolved filename] 승인 된 솔루션이 아니라이 작업을 수행하십시오.
트래비스 Schneeberger

1
@TravisSchneeberger 받아 들여진 해결책은 괜찮습니다 😉
Hi-Angel

svn resolved * filename *은 나를 위해 그것을 고치지 않습니다.
reinierpost

답변:


447

다음 명령을 제공하십시오.

svn resolved <filename or directory that gives trouble>

(이 의견에 대한 답변을 @Jeremy Leipzig에게 감사드립니다)


35
진지하게, 그것이 어떻게 해결되는지 신경 쓰지 않는다면 (아마도 그것을 삭제하려고 할 것입니다) 이것이 정답입니다.
invertedSpear

1
이것은 아무것도 해결하지 못합니다. 다음 커밋에서 오류가 다시 발생합니다.
Tadej

고마워요, 그것은 나를 위해 작동합니다! 당신은 당신의 svn 루트 저장소에 있어야합니다, 당신은이 명령을 사용할 수 있습니다!
GeekHades

276

확인 방법은 다음과 같습니다.

svn remove --force filename
svn resolve --accept=working  filename
svn commit

자세한 내용은 http://svnbook.red-bean.com/en/1.8/svn.tour.treeconflicts.html에 있습니다.


Eclipse IDE로 작업하는 경우 "비 명령 행"솔루션을 적용 할 수도 있습니다.이 솔루션은 아래에 별도의 답변으로 설명되어 있습니다.
피터 위퍼 만

3
svn 1.7.4를 사용하여 svn help는 " 'svn resolve --accept working'을 실행하기 위해 더 이상 사용되지 않는다"는 상태를 해결했습니다.
wreckgar23

35

나를 위해 revert --depth infinity 옵션 고정 Svn의 디렉토리는 확실한 문제로 남아 있습니다.

svn revert --depth infinity "<directory name>"
svn update "<directory name>"

1
파일의 전체 디렉토리를 되돌 리거나 파일이 더 이상 존재하지 않습니다
biology.info

서버에 존재하는 로컬로 삭제 된 파일의 충돌을 해결하기 위해이 옵션이 작동했습니다.
Neo

1
고마워 "svn revert --depth infinity." 나를 위해 일하고 삭제 된 파일을 복원했습니다. 삭제 된 파일은 "svn up"으로 다시 나타나지 않습니다
Rauli Rajande

16
  1. svn 해결
  2. svn 정리
  3. svn 업데이트

..이 순서의 세 svn CLI 명령은 올바른 디렉토리에 cd-ed되어있는 동안 저에게 효과적이었습니다.


@Elad 타박이 : 내 경우에는 내가 나에게 문제를 제공하는 파일의 상위 디렉토리로해야했다, 이것은 당신이 우연히 어떤 수 있습니다
제이 설리반

11

Eclipse IDE를 사용 중이고 커밋 할 때이 오류가 발생하면 도구 내 솔루션이 있습니다. Subclipse를 사용하고 있지만 Subversive 솔루션은 비슷할 수 있습니다.

눈치 채지 못한 부분은 충돌하는 파일에 파일이 실제로 "충돌 된"것으로 표시되는 추가 기호가 있다는 것입니다.

파일을 마우스 오른쪽 버튼으로 클릭하고 "팀"및 "충돌 편집 ..."을 선택하십시오. 적절한 조치를 선택하십시오. 이전에 파일을 텍스트 수준에서 수동으로 병합 했으므로 첫 번째 옵션을 사용하여 로컬 복사본의 현재 상태를 "해결 된 솔루션"으로 사용합니다. 이제 "OK"를 누르십시오.

충돌하는 심볼이 사라지고 다시 커밋 할 수 있어야합니다.


2
또한 디렉터리 충돌이 발생하는 경우 "팀-> 트리 충돌 표시"를 수행 한 다음 모든 충돌을 검토하고 해결됨 (별도의 "SVN 트리 충돌"창에서)으로 표시하십시오.
altumano

6

아래에 하나 더 해결책

전체 폴더가 제거되고 "admin file .svn is missing"오류가 발생하는 SVNis가 발생하면 다음을 사용하여 충돌을 작동 상태로 해결합니다.

svn resolve --accept working "file / directory name "

3

거북이 SVN에 대한 지침

이 오류가 표시되는 디렉토리로 이동하십시오. 변경 사항이 없으면 다음을 수행하십시오.

ㅏ. 마우스 오른쪽 버튼을 클릭하고 '되돌리기'를 수행하십시오
. b. 모든 파일을 선택하십시오
. c. 그런 다음 디렉토리를 다시 업데이트하십시오.


3

커맨드 라인을 사용하여 충돌을 제거하기 위해 다음 명령을 사용합니다.

svn revert "location of conflict folder" -R
svn cleanup
svn update

현재 디렉토리를 되돌리기 위해

svn revert . -R

하 하하하, 이러지 마 나쁜 일을 할 것입니다.
Owl

분명히 변경 사항을 되돌릴 것입니다
Ujjwal Roy

실제로 충돌과 같은 몇 가지 문제를 작동 단지를 통해 CLI를 해결할 수
zero8

2

(나처럼) 해결하는 데 문제가 있고 리소스를 많이 변경했기 때문에 리소스를 삭제하고 업데이트 할 수 없으며 기본 클라이언트 대신 이클립스 파괴 기능을 사용하는 경우 다음 단계를 수행하십시오.

  1. 전체 프로젝트 디렉토리를 복사하십시오
  2. 일식 내에서 팀> 연결 끊기를 수행하고 svn 메타 데이터를 삭제하도록 선택하십시오.
  3. 그런 다음 팀> 프로젝트 공유를 선택하고 프로젝트가있는 폴더와 동일한 폴더를 가리 킵니다.
  4. 예를 선택하고 모든 것을 커밋하십시오 (구성 파일과 같은 매우 로컬 리소스를 제외하고 싶을 수도 있습니다)
  5. 첫 번째 커밋 평가판 이전에 일부 리소스를 삭제하거나 이동 한 경우 이전 리소스 (이전 위치에서 하나씩, 새 위치에서 하나씩)를 삭제하고 삭제를 커밋해야합니다.

끝났습니다.


2

적절한 해결책은 다음과 같습니다.

(1) backup your-file/your-directory
(2) svn revert your-file/your-directory
(3) svn update your-file/your-directory
(4) Merge the backup your-file/your-directory to the updated one.
(5) svn ci -m "My work here is done"

0

비슷한 문제가 있었는데 이것이 어떻게 해결되었는지입니다.

xyz @ ip : ~ / formsProject_SVN $ svn 해결 양식 Proj / templates / search

'formsProj / templates / search'의 충돌 상태 해결

이제 프로젝트를 업데이트하십시오

xyz @ ip : ~ / formsProject_SVN $ svn 업데이트

'.'업데이트 중 :

선택 : (mc) 영향을받는 로컬 이동 유지, (r) 확인 표시 (이동 중단), (p) 연기, (q) 종료 해결, (h) 도움말 : r (해결하려면 "r"옵션 선택)

'formsProj / templates / search'의 충돌 상태 해결

충돌 요약 : 트리 충돌 : 남아있는 0 (및 이미 해결 된 1)


0

나는 리눅스에서 같은 문제를 겪었지만 허용되는 대답으로 해결할 수는 없었다. cd올바른 폴더로 이동하여 다음을 실행 하여 문제를 해결할 수있었습니다 .

svn remove --force filename  
syn resolve --accept=working filename  
svn up

그게 다야.


두 번째 줄은 svn그렇지 않습니다syn
Diego Romero Rodriguez
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.