[완료]CVS commit 취소하는 방법.

sunnmoon의 이미지

개발 하는 테스트 서버에서 commit을 했는데요.
cvs ci -m '' 파일명
이렇게 해야 하는데 ..
cvs ci -m 파일명
해버렸더니, 다른 파일들도 commit이 되어버렸습니다.
다른 파일들도 수정중이긴 한데 commit해서 실서버에 올릴
내용외에것도 다 commit되어버렸네요.

물론 실서버에 올린건 그중에 올려야 될 파일만 올리긴 했는데..
cvs 에는 버젼이 올라가서 아직 수정중인것도 적용되어버려서
문제가 되네요.

개발자는 두명인데 제가 commit한거를 취소 시킬려면 어떻게 해야하나요.
물론 제 계정에서는 수정한거를 다시 덮지는 않아도 되고요.

선배님들의 조언 부탁드립니다. 설명이 제대로 되었는지 모르겟네요..
행복한 하루되시길

익명사용자의 이미지

커밋한 것은 취소 안됩니다. 정확한 시간 알면 되돌릴 수는 있습니다. 요컨대 1시간 전이다라면

원래 모듈 디렉토리 rename 해서 백업해 놓고

cvs co -D '1 hour ago' 등으로 하나 만든후 모든 CVS 디렉토리 날려버리고 tar로 만든후 백업을 다시 원래 이름으로, 그리고 tar를 풀어서 모두 overwrite 해버리고 다시 커밋하면 될겁니다.

익명사용자의 이미지

커밋한 것은 취소 안됩니다. 정확한 시간 알면 되돌릴 수는 있습니다. 요컨대 1시간 전이다라면

원래 모듈 디렉토리 rename 해서 백업해 놓고

cvs co -D '1 hour ago' 등으로 하나 만든후 모든 CVS 디렉토리 날려버리고 tar로 만든후 백업을 다시 원래 이름으로, 그리고 tar를 풀어서 모두 overwrite 해버리고 다시 커밋하면 될겁니다.

익명사용자의 이미지

커밋한 것은 취소 안됩니다. 정확한 시간 알면 되돌릴 수는 있습니다. 요컨대 1시간 전이다라면

원래 모듈 디렉토리 rename 해서 백업해 놓고

cvs co -D '1 hour ago' 등으로 하나 만든후 모든 CVS 디렉토리 날려버리고 tar로 만든후 백업을 다시 원래 이름으로, 그리고 tar를 풀어서 모두 overwrite 해버리고 다시 커밋하면 될겁니다.

익명사용자의 이미지

커밋한 것은 취소 안됩니다. 정확한 시간 알면 되돌릴 수는 있습니다. 요컨대 1시간 전이다라면

원래 모듈 디렉토리 rename 해서 백업해 놓고

cvs co -D '1 hour ago' 등으로 하나 만든후 모든 CVS 디렉토리 날려버리고 tar로 만든후 백업을 다시 원래 이름으로, 그리고 tar를 풀어서 모두 overwrite 해버리고 다시 커밋하면 될겁니다.

익명사용자의 이미지

커밋한 것은 취소 안됩니다. 정확한 시간 알면 되돌릴 수는 있습니다. 요컨대 1시간 전이다라면

원래 모듈 디렉토리 rename 해서 백업해 놓고

cvs co -D '1 hour ago' 등으로 하나 만든후 모든 CVS 디렉토리 날려버리고 tar로 만든후 백업을 다시 원래 이름으로, 그리고 tar를 풀어서 모두 overwrite 해버리고 다시 커밋하면 될겁니다.

익명사용자의 이미지

안되나?

익명사용자의 이미지

캐쉬에 문제 있습니다. 본의 아니게 여러번 동일한 내용을 올렸네요.

sunnmoon의 이미지

답변 감사 드리며.. 여러모로 해보고 있습니다.
많은 도움이 될거 같네요
Romantic-Oriented Programming
http://sunnmoon.pe.kr

Romantic-Oriented Programming
http://sunnmoon.pe.kr

wariua의 이미지

종종 발생하는 문제인데 사이트 검색을 해봐도 딱히 걸리지는 게 없군요.

제가 알기로, SVN은 저장 형식의 특성 때문에 특정 리비전을 삭제하는 깔끔한 방법이 없지만 (http://subversion.tigris.org/faq.html#removal) CVS는 그런 경우를 위한 명령을 제공합니다. CVS 문서에 있는 FAQ의 한 항목이기도 합니다.

"cvs admin -o..." 명령을 통해서 여러 리비전을 하나로 통합하거나 특정 리비전을 삭제할 수 있으며, 자세한 내용은 "man cvs"의 "admin options" 절에 있는 "-o" 옵션의 설명을 참고하시면 됩니다. 단, man페이지에서도 얘기하고 있듯이, 소스 저장소의 사본을 만들어서 먼저 실험을 해보는 것이 안전합니다.
----
$PWD `date`

$PWD `date`

익명사용자의 이미지

이런 문제가 종종 발생하면 프로세스 잘못되었다고 봐야죠. CVS 한 10년 정도 사용중인데, 개념없을 때 1-2번 그외에는 한번도 그런 문제 겪어보지 못했습니다.

조금씩 자주 커밋하고 택을 활용하는 프로세스가 필요할 겁니다. 같이 일하는 팀은 하루에도 2번 이상 커밋하고, 업데이트는 3-4회 정도 합니다. 에디터(emacs) cvs 인터페이스 사용하기 때문에 업데이트도 자주하게 되더군요. conflict 났을 때는 ediff로 간단히 해결합니다. 이런 것들이 잘 안되면, cvs나 다른 버전 컨트롤 프로그램 아무리 좋은 것 사용한다 해도 버전 컨트롤 할때나 안하고 직접 여러 백업 보관할 때나 그다지 차이가 없게 됩니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.