· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
KLDP.netÀÇ CVS »ç¿ëÇϱâ HOWTO

!KLDPNetÀÇ CVS »ç¿ëÇϱâ


1. ¼­¹®

KLDPNet¿¡¼­ ÇÁ·ÎÁ§Æ®¸¦ ÁøÇà·Á°í ÇϽðųª. ÇÁ·ÎÁ§Æ®¸¦ ÁøÇà ÁßÀε¥ KLDPNetÀÇ CVS »ç¿ë¹ýÀ» ¾Ë°íÀÚ ÇϽô ºÐ

KLDPNetÀº GForge·Î ±¸¼ºµÈ FreeSoftware, OpenSource °³¹ß Ä¿¹Â´ÏƼ »çÀÌÆ® ÀÔ´Ï´Ù.

¿Ü±¹¿¡ ÀÖ´Â FreeSoftware, OpenSource °³¹ß Ä¿¹Â´ÏƼ »çÀÌÆ® Áß¿¡´Â SourceForge°¡ °¡Àå ¸¹Àº »ç¿ëÀÚ¸¦ °¡Áö°í ÀÖÀ¸¸ç ±× ¿Ü¿¡µµ [http]GNU Savannah, [http]berlios.de µîÀÌ ÀÖ½À´Ï´Ù.

2. KLDPNetÀÇ ¸ÞÀϸµ ¸®½ºÆ®¿¡ CVS Ä¿¹Ô ¸Þ½ÃÁö Æ÷½ºÆà Çϱâ

CVS·Î ¼Ò½ºÄڵ带 °ü¸®ÇÒ¶§ °¡Àå ÇÊ¿äÇÑ °ÍÀÌ CVS·Î±×¸¦ ³²±â´Â °ÍÀÔ´Ï´Ù. ·Î±×¸¦ ³²±âÁö ¾ÊÀ¸¸é ´©°¡ ¾î¶² ÆÄÀÏÀ» ¾î¶»°Ô ¼öÁ¤ Çß´ÂÁö ¾Ë±â Èûµì´Ï´Ù.

KLDPNet¿¡¼­´Â ¸ÞÀϸµ ¸®½ºÆ®¸¦ ¼­ºñ½º ÇÏ°í ÀÖ½À´Ï´Ù.

KLDPNetÀÇ CVS¿¡ Ä¿¹ÔÀ» Çϸé CVS Ä¿¹Ô ¸Þ½ÃÁö¸¦ ¸ÞÀϸµ ¸®½ºÆ®¿¡ ÀÚµ¿À¸·Î Æ÷½ºÆà µÇµµ·Ï ¼³Á¤ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°Ú½À´Ï´Ù.

2.1. CVSROOT ¼³Á¤

¿©·¯ºÐµéÀÌ ¸¸µç ÇÁ·ÎÁ§Æ®¿¡´Â CVS ÀúÀå¼Ò¸¦ ÇÔ²² Á¦°øÇÏ°í ÀÖ½À´Ï´Ù.

°¢°¢ÀÇ ÇÁ·ÎÁ§Æ® ÆäÀÌÁöÀÇ CVS ¸Þ´º¿¡¼­ CVS ÀúÀå¼Ò µÑ·¯º¸±â(ViewCVS)¿¡ µé¾î°¡ º¸¸é CVS ÀúÀå¼ÒÀÇ ¸ð½ÀÀ» À¥À¸·Î Ç¥½ÃÇØ ÁÝ´Ï´Ù.

ÇÁ·ÎÁ§Æ®¸¦ óÀ½ ¸¸µé¾úÀ» °æ¿ì CVSROOT¶ó´Â µð·ºÅ丮¸¸ ÀÖÀ» °ÍÀÔ´Ï´Ù.

ÀÌ CVSROOT µð·ºÅ丮¿¡¼­ CVSÀÇ È¯°æ¼³Á¤À» ÇÒ ¼ö ÀÖ½À´Ï´Ù.

CVSROOT µð·ºÅ丮 ¾È¿¡´Â ´ÙÀ½°ú °°Àº ÆÄÀϵéÀÌ Á¸Àç ÇÕ´Ï´Ù.
checkoutlist
commitinfo
config
cvswrappers
editinfo
loginfo
modules
notify
rcsinfo
taginfo
verifymsg


ÀÚ½ÅÀÇ ÇÁ·ÎÁ§Æ®ÀÇ CVS ÀúÀå¼Ò¿¡¼­ CVSROOT µð·ºÅ丮¸¦ üũ¾Æ¿ô ÇÑ µÚ¿¡ ÆÄÀÏÀ» ¼öÁ¤ÇÑ ´ÙÀ½ ´Ù½Ã Ä¿¹ÔÀ» ÇÏ¿© ¼³Á¤ ÆÄÀÏÀ» ¼öÁ¤ÇÕ´Ï´Ù.

peopleÀº ÇÁ·ÎÁ§Æ® ¸â¹öÀÇ ID ÀÔ´Ï´Ù.

exproject´Â ÇÁ·ÎÁ§Æ® À̸§ÀÔ´Ï´Ù.


ssh¸¦ ÀÌ¿ëÇÑ Ã¼Å©¾Æ¿ô

cvs -z3 -d:ext:people@cvs.kldp.net:/cvsroot/exproject co CVSROOT

@log_accum.pl.gz (4.35 KB) ÀÌ ÆÄÀÏÀ» ¹Þ°í ¾ÐÃàÀ» Ǭ µÚ ¾Æ·¡ $MAIL_TO ºÎºÐÀ» ÀÚ½ÅÀÇ CVS Ä¿¹Ô ·Î±× ¸ÞÀϸµ ¸®½ºÆ® ÁÖ¼Ò·Î ¹Ù²ß´Ï´Ù.
$MAIL_TO       = 'cvs-example@lists.kldp.net';

To: ºÎºÐµµ ¾Ë¸Â°Ô ¹Ù²ß´Ï´Ù.
    print(MAIL "To: Example CVS Commit Message <$MAIL_TO>\n");

log_accum.plÀ» ¹æ±Ý üũ¾Æ¿ô ¹ÞÀº CVSROOT µð·ºÅ丮¿¡ º¹»çÇÕ´Ï´Ù. CVSROOT¿¡ Ãß°¡ÇÏ°í µÚ Ä¿¹Ô ÇÕ´Ï´Ù.
CVSROOT# cvs add log_accum.pl
CVSROOT# cvs commit


ÀÌÁ¦ ¾Æ·¡ µÎ ÆÄÀÏÀ» ¼öÁ¤ ÇÕ´Ï´Ù.

checkoutlist
# The "checkoutlist" file is used to support additional version controlled
# administrative files in $CVSROOT/CVSROOT, such as template files.
#
# The first entry on a line is a filename which will be checked out from
# the corresponding RCS file in the $CVSROOT/CVSROOT directory.
# The remainder of the line is an error message to use if the file cannot
# be checked out.
#
# File format:
#
#       [<whitespace>]<filename><whitespace><error message><end-of-line>
#
# comment lines begin with '#'
log_accum.pl file not found
#options file not found

loginfo
# The "loginfo" file controls where "cvs commit" log information
# is sent.  The first entry on a line is a regular expression which must match
# the directory that the change is being made to, relative to the
# $CVSROOT.  If a match is found, then the remainder of the line is a filter
# program that should expect log information on its standard input.
#
# If the repository name does not match any of the regular expressions in this
# file, the "DEFAULT" line is used, if it is specified.
#
# If the name ALL appears as a regular expression it is always used
# in addition to the first matching regex or DEFAULT.
#
# You may specify a format string as part of the
# filter.  The string is composed of a `%' followed
# by a single format character, or followed by a set of format
# characters surrounded by `{' and `}' as separators.  The format
# characters are:
#
#   s = file name
#   V = old version number (pre-checkin)
#   v = new version number (post-checkin)
#
# For example:
#DEFAULT (echo ""; id; echo %s; date; cat) >> $CVSROOT/CVSROOT/commitlog
# or
#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog
DEFAULT /usr/bin/perl $CVSROOT/CVSROOT/log_accum.pl %s

ÀÌÁ¦ ÀÌ ÆÄÀϵ鵵 Ä¿¹Ô ÇÕ´Ï´Ù.
CVSROOT# cvs commit

¸ÞÀϸµ ¸®½ºÆ® ¼³Á¤¿¡¼­ °¢ ¸â¹öµéÀÇ À̸ÞÀÏ ÁÖ¼Ò¸¦ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù. @users.kldp.netÀ¸·Î Ä¿¹Ô ¸ÞÀÏÀÌ º¸³»Áö±â ¶§¹®¿¡ ÇØ´ç ¸ÞÀÏÀ» Çã¿ëÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. Çã¿ëÇØ ÁÖÁö ¾ÊÀ¸¸é ¸ÞÀϸµ ¸®½ºÆ®¿¡ Æ÷½ºÆà µÇÁö ¾Ê½À´Ï´Ù.

¸ÞÀϸµ ¸®½ºÆ® °ü¸®ÀÚ ÆäÀÌÁö·Î µé¾î°©´Ï´Ù.

Privacy options -> Sender filters -> Non-member filters(List of non-member addresses whose postings should be automatically accepted.)
°³ÀÎ Á¤º¸ º¸È£ Á¤Ã¥ -> º¸³½ÀÌ °É·¯³»±â -> ºñȸ¿ø °É·¯³»±â(ºñȸ¿øÀÇ ÁÖ¼ÒÁß º¸³½ ±ÛÀ» ÀÚµ¿À¸·Î ¹Þ¾ÆµéÀÏ ¸ñ·ÏÀ» ³ª¿­Çϼ¼¿ä.)

hello@users.kldp.net
hi@users.kldp.net

°¢ ¸â¹öµéÀÇ ¸ÞÀÏ ÁÖ¼Ò¸¦ Ãß°¡ÇÕ´Ï´Ù.

ÀÌÁ¦ºÎÅÍ ¼Ò½º¸¦ ¼öÁ¤ÇÏ°í Ä¿¹ÔÀ» ÇÏ¸é ¸ÞÀϸµ ¸®½ºÆ®·Î Ä¿¹Ô ¸Þ½ÃÁö°¡ Æ÷½ºÆà µÉ °ÍÀÔ´Ï´Ù.


3. KLDPNetÀÇ CVS, SSH ¾ÏÈ£ ¾øÀÌ »ç¿ëÇϱâ

°³¹ßÀÚµéÀº anonymous ·Î Á¢¼ÓÇÏÁö ¾Ê°í, ÀÚ½ÅÀÇ °èÁ¤À¸·Î cvs·Î Á¢¼ÓÇÏ¿© ¼Ò½º¸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. À̶§, ¸Å¹ø ¾ÏÈ£¸¦ ¹°¾î º¸°Ô µÇ´Âµ¥, ÀÌ´Â CVS°¡ ¿ÜºÎ ÇÁ·Î±×·¥À¸·Î SSH¸¦ »ç¿ëÇϸ鼭 SSHÀÇ ÀÎÁõ ¹æ½ÄÀ» µû¸£±â ¶§¹®ÀÔ´Ï´Ù.

KLDPNet cvs ÀúÀå¼ÒÀÇ °³ÀÎ °èÁ¤¿¡´Â sshdÀÇ public key method ÀÎÁõ ¹æ½Ä¿¡ »ç¿ëµÇ´Â ~/.ssh/authorized_keys ÆÄÀÏÀÌ ÀÖ¾î, ¿ÜºÎÀÇ public key¸¦ µî·ÏÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°Ú½À´Ï´Ù.

openssh¸¦ »ç¿ëÇÒ ¶§¸¦ °¡Á¤ÇÏ°í ¼³¸íµå¸®°Ú½À´Ï´Ù.

rsa1 ¿ë private/public key pair ¸¦ ¸¸µé±â

$ ssh-keygen -t rsa1
Generating public/private rsa1 key pair.
Enter file in which to save the key (/hunkim/.ssh/identity):
Enter passphrase (empty for no passphrase): xxxx
Enter same passphrase again: xxxx
Your identification has been saved in /hunkim/.ssh/identity.
Your public key has been saved in /hunkim/.ssh/identity.pub.
The key fingerprint is:
ba:47:d9:81:81:14:d0:ca:f5:f5:9b:27:11:62:25:5d hunkim@ucsc.edu

passphrase¶õ private key¸¦ ¾ÏȣȭÇϴµ¥ »ç¿ëµÇ´Â ¾ÏÈ£ÀÔ´Ï´Ù. ÀÌ ÇÔÈ£¸¦ °ø¹éÀ¸·Î Çصµ ÁÁÁö¸¸ º¸¾È»ó ÁöÁ¤À» ÇØµÎ½Ã°í ´ÙÀ½°ú °°ÀÌ ssh-agent¸¦ »ç¿ëÇϽô°ÍÀÌ ÁÁ½À´Ï´Ù.

ssh-agent´Â ´ÙÀ½°ú °°ÀÌ »ç¿ëÇÏ½Ã¸é µË´Ï´Ù.
$ eval `ssh-agent`
Agent pid 14502

$ ssh-add
Enter passphrase for /hunkim/.ssh/identity: xxxx
Identity added: /hunkim/.ssh/identity (/hunkim/.ssh/identity)

~/.ssh/identity.pub ÆÄÀÏÀÌ »ý¼ºµÈ public keyÀÔ´Ï´Ù.

¸¸µç public key ¸¦ KLDPNet ¿¡ µî·Ï

KLDPNetÀÇ ~/.ssh/authorized_keys ÆÄÀÏ¿¡ µî·ÏÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù.


ÀÌ ÆäÀÌÁö¸¦ ·Î±×ÀÎÇÑµÚ ¿­¾îº¸¸é, »ý¼ºÇÑ public key¸¦ µî·ÏÇϴ âÀÌ ³ª¿É´Ï´Ù. ÀÌ Ã¢¿¡ »ý¼ºµÈ Public keyÀÎ ~/.ssh/identity.pub ÆÄÀÏÀÇ ³»¿ëÀ» º¹»çÇØ ³Ö½À´Ï´Ù. ÁÖÀÇÇÒ °ÍÀº À§ ³»¿ëÀÌ ÁÙ¹Ù²ÞµÇ¾î µé¾î°¡´Â ÀÏÀÌ ¾øµµ·ÏÇؾßÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. ¸Ç ¾Õ°ú µÚÀÇ °ø¹éÀº »ó°ü¾ø½À´Ï´Ù.

µî·ÏµÈ public key´Â ¹Ù·Î ¹Ý¿µµÇÁö ¾Ê½À´Ï´Ù. crontab¿¡ µî·ÏµÈ ÀÛ¾÷ÀÌ ½ÇÇàµÉ ¶§¿¡ ÀϾ±â ¶§¹®ÀÔ´Ï´Ù.

SSH Version 1.0 »ç¿ë ¼³Á¤

KLDPNet´Â ssh version 1.0 À¸·Î ÀÛµ¿ÇϹǷΠÀÌ »çÀÌÆ®¿¡ ´ëÇؼ­´Â ±âº»ÀûÀ¸·Î ¹öÀüÀ» ¹Ù²Ùµµ·Ï ÇÕ´Ï´Ù.

~/.ssh/config ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇÕ´Ï´Ù.

Host *.kldp.net
Protocol 1

public key update°¡ ÀϾÀ»°Å¶ó »ý°¢µÈ ÈÄ :) ½ÃµµÇغ¸¼¼¿ä.

4. Q&A (Áú¹®°ú´ë´ä)

Q: kldp.netÀÇ cvs¿¡¼­ cvs -z3 -d:pserver:anonymous@cvs.kldp.net:/cvsroot/ÇÁ·ÎÁ§Æ®¸í co modulename À¸·Î µÇ¾î Àִµ¥, ¿©±â¿¡¼­ modulename Àº ¹«¾ùÀ» ¸»ÇÏ´Â °ÍÀΰ¡¿ä?

A: È®ÀÎÇغ¸´Ï CVSROOT ÀÇ ÇÏÀ§ Æú´õ°¡ modulename ÀÌ µÇ´Â °Í °°Àºµ¥. ¸ÂÁÒ?


Q: ÇöÀç KLDPNetÀÇ CVS°¡ !SSL1À¸·Î ¿¬°á °¡´ÉÇմϱî? SSL2·Î Á¢¼ÓÇØ¾ß ÇÏ´Â °Í °°Àºµ¥, Ȥ½Ã È®ÀÎ °¡´ÉÇϽŠºÐ²²¼­´Â È®ÀÎÇØÁÖ½Ã¸é °¨»çÇÏ°Ú½À´Ï´Ù.





sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-03-15 21:12:57
Processing time 0.0082 sec