· 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·Î Á¢¼ÓÇØ¾ß ÇÏ´Â °Í °°Àºµ¥, Ȥ½Ã È®ÀÎ °¡´ÉÇϽŠºÐ²²¼­´Â È®ÀÎÇØÁÖ½Ã¸é °¨»çÇÏ°Ú½À´Ï´Ù.



ID
Password
Join
You are tricky, but never to the point of dishonesty.


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.0083 sec