지형지 물 지점을 만들고 여러 번 커밋했습니다. 일부 파일을 필자의 지형지 물에서 결코 만진 적이없는 것처럼 되돌려 놓아야합니다. 다시 말해 나는 그들을 다시 통합하고 싶지 않다.SVN 지형지 물 지점에서 변경 사항을 되돌리는 방법
어떻게하면됩니까?
지형지 물 지점을 만들고 여러 번 커밋했습니다. 일부 파일을 필자의 지형지 물에서 결코 만진 적이없는 것처럼 되돌려 놓아야합니다. 다시 말해 나는 그들을 다시 통합하고 싶지 않다.SVN 지형지 물 지점에서 변경 사항을 되돌리는 방법
어떻게하면됩니까?
, 상황은 다음입니다 :
당신은 기능을 갖춘 지점을 만들었습니다
$ svn cp ^/trunk/ ^/branches/feature
을 당신은 ^/branches/feature
하고 최선을 다하고에 대한 몇 가지 작업을했다했습니다.
$ ... work, work, work ...
$ svn ci
이제 일부 변경 사항을 취소하고 싶습니다.
그래서 역 병합을 수행하십시오.
먼저 svn log
을 사용하여 취소 할 수정 확인 :
In your featured branch working copy:
$ svn log -v
-----------------------------------
r234 ...
Changed paths:
M /branches/featured/file.c
Implemented a feature
-----------------------------------
In the trunk working copy:
$ svn merge --reintegrate ^/branches/feature .
한 분기에서 다른 분기로 병합을 수행하는 경우 첫 분기에서 발생한 차이점 만 병합합니다. 파일을 만진 적이 없다면 파일에 대한 diff가 없으므로이 파일을 다시 만나는 부분은 없습니다. 아니, 아무 것도 되돌릴 필요가 없습니다. revert
을 수행하면 클라이언트에서 작업 복사본에서 수행 한 변경 사항을 되돌리고 분기 또는 저장소와는 아무런 관련이 없습니다. 내가 제대로 이해하면
을, 나는 저장소와 함께 작동 및 기능에 일부 파일을 반환합니다 되돌리기 명령의 대응이 필요합니다 : 트렁크에
$ svn merge -c -234 .
재 통합을 : 개정 전에 -
참고 기능 브랜치를 만드는 순간의 상태로 분기합니다. –
dmiandre
그게 내가 필요한거야! 하지만 전 커밋을 되돌릴 수는 없습니다. 여러 개의 커밋에서 하나의 파일 만 있습니다. 또 다른 이유는 거북이 SVN을 사용하여 변경 사항을 취소 할 수없는 이유는 지형지 물의 이름을 변경했기 때문입니다. – dmiandre
@dmiandre, 특정 파일을 역 병합 할 수 있습니다. $ svn merge -c -234 path/to/file – Paker