[질문] wincvs관련 #2

dummy999의 이미지

전에 알려주신 CVS내용에대해 감사드립니다.
그런데 정작 제가 가지고있는 버전에는 해당 메뉴가 없네요..

또 거북이CVS를 설명한 문서는 그림이 빠져있어서 뭘어떻게 해야할지도 모르겠습니다.
Wincvs에관한문서(http://kldp.net/forum/message.php?msg_id=1486)에는

Quote:

2) 그 다음 다음과 같은 명령을 실행합니다. ssh를 잘 아는 분이라면 다른 명령을 사용해도 됩니다. 뭐든지 일단 처음 접속을 하는 게 중요한 거니까요.
ssh cvs.koreannethack.kldp.net 'echo $PATH'
3) 그러면 처음인 경우 다음과 같은 내용이 뜨는데 여기서 y를 눌러주세요.
--- 메세지 시작 ---
The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's key fingerprint is:
(암호 Key 문자열 출력)
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n) y
--- 메세지 끝 ---
4) 그럼 무슨 이상한 에러가 하나 뜨고 종료가 됩니다. 이건 정상적이므로 무시하세요.

이부분이 동일하게 뜨지않더라구요

그리고 제가 처음 만드는 cvs에서 모듈을 다운로드한다는데 원격지의
CVS저장소엔아무것도 없는데 (cvsroot말고)무슨 모듈이름을 쓰라고하는건지..

부탁좀드립니다.

codebank의 이미지

문서에보면 두가지의 파일을 가져오게 되어있습니다.
먼저 wincvs 파일과 plink.exe파일을 가져와야합니다.
제가 볼때에는 두번째 파일인 plink.exe를 GNU\WinCvs디렉토리에 복사하지
않은것 같네요.

위에 나열된것은 ssh를 이용해서 접근하는 방법입니다.
일단 서버측에 cvs가 사용되어질 수 있도록 환경이 구축되어 있어야합니다.
기본적으로 LINUX에는 cvs가 설치되지만 관리자가 cvs server에 대한 작업을
해주어야만 사용할 수 있습니다.
그 문서는

http://kldp.org/KoreanDoc/html/CVS_Tutorial-KLDP/index.html

부분을 보시고 환경을 설정해주어야합니다.
그리고 보통ssh 환경을 이용하는 방법과 pserver를 이용하는 방법이 있는데
제가 주로 사용했던 방법은 pserver를 이용하는 방법이었습니다.
그리고 cvs저장소에 아무것도 없다고 하셨는데 일단 LINUX에서
cvs -m 을 이용해서 원하는 프로젝트를 만들고 그다음부터 WinCVS를 이용해서
접근을 시도하시는게 좋겠네요...
예전에 한번 성공을 했었는데 다시한번 해볼려니 잘 안되는군요.
일단 Test를 해보고 성공하면(확률은 적지만...) 다시 답변을 달아드리겠습니다.
:oops:

------------------------------
좋은 하루 되세요.

codebank의 이미지

결국에는 접속에 성공했네요... :D
일단 방법을 써 놓겠습니다.
서버세팅이 중요하더군요.
즉, cvs서버에 해당하는 부분에가서 기존에 나와있는 형식대로 그대로 따라서
설정을 마치면 됩니다. 여기서 사용하는 방법은 ssh방식이 아닌 pserver방식을
사용하는 것이니 이점 유의 하세요.
설정을 마치면 마지막 한가지 중요한것은 passwd파일입니다.
만일 cvs root가 /home/cvs로 되어있다면 /home/cvs/CVSROOT 로 이동을
합니다.
다음 vi passwd 파일을 열고 다음과 같은 작업을 해줍니다.

 # pwd
 /home/cvs/CVSROOT
 # vi passwd
 anonymous::anonymous
 test:$1$2N7m0wYT$SQqckq9dDu8Pi0j/UsVaV0:test,test1,test2

여기서 중요한것은 test:$1...:test,test1,test2 입니다.
형식은 '유저:암호:로그인시 사용하는 유저이름' 이렇습니다.
암호는 만일 shadow를 사용하면 /etc/shadow에 암호가 있습니다.
만일 shadow를 사용하지 않는다면 /etc/passwd가 있습니다.
UNIX의 crypt() 함수를 사용해서 암호가 생성된다고 하는데 그에 따른 유틸을
찾질 못했네요. FreeBSD에서는 htpasswd라는 것이 있다는데 찾아보질 않아서
LINUX에서는 어떤형태로 존재하는지 모르겠네요. 일단 위와같이해도 이상은
없습니다.
이렇게하면 일단 서버쪽 설정은 끝난것입니다. 만일 user가 추가되면 passwd
파일에 똑같이 추가만 시켜주면 됩니다.

WinCVS쪽 설정은 다음과 같습니다.
메뉴의 [Admin]->[Preferences] 또는 [Ctrl]+[F1]을 누릅니다.
Authentication - pserver
Path - /home/cvs <- cvs root
Host address - 192.168.0.3 <- 서버의 URL이나 IP
User name - test <- 접속할 User
CVSROOT - test@192.168.0.3:/home/cvs <- 자동생성

[Globals]
Prune (remove) empty directory <- 체크안함

[CVS]
HOME... - D:\CVSROOT <- MS-Windows에서 저장할 공간

[WinCvs]
Default viewer used to open - ... <- 파일을 수정할때 사용하는 에디터

이정도만 해주면 됩니다. 나머지는 보시고 잘 판단해보세요.
다음으로는 로그인을 해봅니다.
[Admin]->[Login]
패스워드창이 나오면 암호를 넣어주고 아래

***** CVS exited normally with code 0 *****

이런 메시지가 나오면 성공한 겁니다. code 1이나오면 에러가 난것인데 이때는
그 위에 있는 메시지를 보고 어떤 에러인지를 판단해야합니다.
이 Login은 WinCvs가 실행되고 서버에 최초 접속시에 한번해주면 됩니다.
WinCvs를 종료한 후에 다시 실행하면 물론 Login을 한번해주어야합니다.
즉, Login의 유효시간은 WinCvs가 살아있을 때뿐이죠.
다음은 새로운 프로젝트를 올릴때 입니다.
일단 위에서 설정한 MS-Windows에 first(프로젝트 이름)라는 디렉토리를
만듭니다. 즉, D:\CVSROOT\first 가 되겠죠.(이건 test용으로 지어진...)
그리고 아무 파일이나 하나 생성을 시켜 놓습니다. 파일이 없으면 등록이 안될
수도 있으니...
README 파일을 하나 작성시키고 저장해 놓습니다.
자 다음은 메뉴의 [Remote]->[Create a new Repository]를 한번 해줍니다.
그리고나서 [View]->[Browse Location]->[Change]를 선택하고
D:\CVSROOT 를 선택해줍니다.
다음 [Remote]->[Import module]을 선택하면 아마 세모 느낌표가 나타날겁
니다.
그냥 [Continue]를 선택하면 Import settings가 나옵니다.
Select the module name - first
: 모듈이름이나 서버 path를 선택하는 부분인데 그냥 위와같이...
Initial vendor ...
Vendor tag - first_project
: 프로젝트 이름의 테그입니다.
Release tag - start
: Release 테그를 넣는 곳인데 이부분은 CVS문서를 참고하세요.
Enter the log message
첫번째 프로젝트
: 프로젝트명이나 프로젝트의 시작을 알리는 글등을 넣습니다.
안넣어도 됩니다.
다른 탭들은 이미 설정되어있는 값들이 들어가 있습니다. 다시한번 확인해보고서
확인을 누르면 됩니다.

이상 간단하게 WinCVS에 대해서 적어봤습니다. 위에 나열되어있는 것이 정확
하게 동작한다는 보장은 없습니다만 일단 제가 보유하고 있는 시스템에서는 동작을
했고 서버에도 등록된것을 확인 했습니다. :-)

------------------------------
좋은 하루 되세요.

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.