하지만 제 경우는 조금 다른 경우인데,
cvs status로 확인했을 때 sticky tag 필드에서 버전이 1.x.2 로 표시되고 branch 명도 확실히 보입니다.
기존에 이 branch에 속해 있던 파일들은 정상적으로 관리되는데, 이전에 없는 파일을 하나 새로 추가하고 cvs add로 포함시키려고 했더니 아래와 같은 에러가 나더군요.
cvs server: cannot add file on non-branch tag <bname>
그리고,.. CVS/Tag 파일의 내용이
'T'로 시작하는 게 branch를 가리키는 거 아닌가요?
답변 주신 글을 보고 CVS/Tag에 대해서 찾아봤는데,
branch tag의 경우에는 'T', revision tag의 경우에는 'N', date의 경우에는 'D'로 표시된다고 하던데..
-b 옵션으로 태깅한 것을 브랜치로 승격(?)시켜야합니다.
-b 옵션으로 태깅한 것을 브랜치로 승격(?)시켜야합니다.
---
http://coolengineer.com
죄송하지만 좀 더 자세하게 설명해 주시면 안 될까요?
죄송하지만 좀 더 자세하게 설명해 주시면 안 될까요?
아마, cvs status 로 보면, sticky tag에 뭔가가 있을
아마, cvs status 로 보면, sticky tag에 뭔가가 있을 것입니다.
거기에 branch 라는 말이 있어야 commit이 제대로 됩니다.
만일 sticky tag로 1.9가 있다면, 그 파일은 1.9를 강제로 지정해서 가져온것이고, 아마 수정되었을 것입니다. 이 경우
cvs rtag -b -r 1.9 test_branch module/directory/thefile.c
와 같이 전체 경로를 줘서 test_branch를 만들고
다시
cvs up -r test_branch thefile.c
로 update 한 뒤 (update 할 때, 작업 내용은 살아 있습니다.)
cvs status
로 확인해 보면, 이번에는 sticky tag에 branch 명이 보일 것입니다.
다음 cvs commit 하면 해당 branch의 다음 버전으로 update가 됩니다.
---
http://coolengineer.com
답변 감사드립니다.하지만 제 경우는 조금 다른 경우인데,cvs
답변 감사드립니다.
하지만 제 경우는 조금 다른 경우인데,
cvs status로 확인했을 때 sticky tag 필드에서 버전이 1.x.2 로 표시되고 branch 명도 확실히 보입니다.
기존에 이 branch에 속해 있던 파일들은 정상적으로 관리되는데, 이전에 없는 파일을 하나 새로 추가하고 cvs add로 포함시키려고 했더니 아래와 같은 에러가 나더군요.
cvs server: cannot add file on non-branch tag <bname>
염치 없지만, 그래도 답변 부탁 드릴께요.. ^^
cvs ci -r 브랜치명 thefile.c위와 같이 하셨나요?
cvs ci -r 브랜치명 thefile.c
위와 같이 하셨나요? -r 뒤에는 branch 이름이 옵니다.
---
http://coolengineer.com
commit 까지 가지도 못했습니다. commit 전에 cvs add
commit 까지 가지도 못했습니다.
commit 전에 cvs add로 새로 만든 파일을 추가해야 하는데, 그것부터 막혀서리..
아마도, 현재 작업사본 디렉토리가 branch를 checkout한 것이
아마도, 현재 작업사본 디렉토리가 branch를 checkout한 것이 아니라
revision을 지정하여 받아 오신것 같군요.
cvs co -r 1.2 module
이런식이었겠죠. 이것을 확인하는 방법은 CVS/Tag 파일을 열어보시면
그안에 어떤 태그가 있는지 알 수 있습니다. 그 태그가 브랜치 명이어야합니다.
cvs co -r brancname module
로 다른 곳에 받아 놓고 작업하신 내용을 복사하신뒤에 다시 add, commit 하세요.
---
http://coolengineer.com
그건 아닙니다. cvs co -r <bname> modu
그건 아닙니다.
cvs co -r <bname> module
으로 사본을 만들어서 작업했습니다 (여러번 확인했습니다).
Sticky tag에 branch명이 출력되구요, 그것도 불안해서
cvs update -r <bname>
한 후에 시도해 보기도 했습니다.
cvs status -v | less로도 살펴봤는데 별다른 문제점을 찾지 못했습니다. 대략 아래와 같습니다.
cvs tag -Fb 로 브랜치를 옮겨 볼까도 생각했었는데,
저 혼자 쓰는 게 아니라서 위험하다 싶은 건 할 수가 없네요. ㅠㅠ
CVS/Tag 파일도 있다면, 그 값은 어떻죠?
CVS/Tag
파일도 있다면, 그 값은 어떻죠?
---
http://coolengineer.com
[quote]cvs tag -Fb 로 브랜치를 옮겨 볼까도 생각했었는
이 내용으로 봐서는 CVS 클라이언트 저장소(로컬 공간)를 공동으로 사용하는 것으로 보여집니다.
이것이 가능한가요?
pynoos님... CVS/Tag 파일의 내용입니다. [code:
pynoos님... CVS/Tag 파일의 내용입니다.
Txxx_patch1
브랜치가 맞는데, 이상하죠? ㅠㅠ
그리고, lovewar님.. 클라이언트 저장소를 공유하고 있지는 않습니다.
[quote="곤"]pynoos님... CVS/Tag 파일의 내용입니다.
이름만 브랜치 아닌가요?
ctags rtag -b -r xxx_patch1 xxx_branch1 modulename
으로 다시 한 번 시도해보세요.
---
http://coolengineer.com
예.. 해 보았습니다만.. 마찬가지였습니다.. ㅠㅠ그리고,.. C
예.. 해 보았습니다만.. 마찬가지였습니다.. ㅠㅠ
그리고,.. CVS/Tag 파일의 내용이
'T'로 시작하는 게 branch를 가리키는 거 아닌가요?
답변 주신 글을 보고 CVS/Tag에 대해서 찾아봤는데,
branch tag의 경우에는 'T', revision tag의 경우에는 'N', date의 경우에는 'D'로 표시된다고 하던데..
왜 안 되는건지.. 쩝..
여튼, 답변 주셔서 너무 감사합니다. ^
[code:1]ctags rtag -b -r xxx_patch1 xxx_
ctags rtag -b -r xxx_patch1 xxx_branch1 modulename
이 실행 결과는 어떤가요?---
http://coolengineer.com
추가하고자 하는 디렉토리의CVS/Entries 를 조작하는 기법을 사
추가하고자 하는 디렉토리의
CVS/Entries 를 조작하는 기법을 사용하는 방법은 어떨까요?
마자막 "D" 라인 앞에 새로운 라인을 추가하고
추가하고자 하는 파일에 대해서 기술해 줍니다.
추가하고자 하는 파일의 디렉토리에서
CVS commit을 하면 CVS 서버에 등록이됩니다.
-- 덧붙이는 글 --
개인적으로 cvs tag -Fb 해석을 잘못했습니다. 죄송합니다.
[quote="pynoos"][code:1]ctags rtag -b -r
cvs rtag ... 를 말씀하시는 거죠?
이걸 써서 브랜치를 새로 만들어서 사용하니 되네요.
하지만..
그 전 것도 분명 브랜치가 맞는 것 같은데, .. 왜 안 됐었던 건지?
여전히 미련이 남는다는... ㅠㅠ
성심껏 답변해 주신 pynoos, lovewar님 감사 드립니다.
댓글 달기