ºìÁªLinuxÃÅ»§
Linux°ïÖú

Linux Server 5.5°²×°SVN+Apache·þÎñ

·¢²¼Ê±¼ä:2010-04-21 15:05:34À´Ô´:ºìÁª×÷Õß:wst021
[align=center]Red Hat Enterprise Linux Server 5.5°²×°SVN+Apache·þÎñ[/align]

ǰÑÔ

Subversion (¼ò³Æsvn)ÊǽüÄêÀ´áÈÆðµÄ°æ±¾¹ÜÀíÈí¼þ£¬ÊÇcvsµÄ½Ó°àÈË¡£Subversion ÊÇÒ»¸ö×ÔÓÉ / ¿ªÔ´µÄ°æ±¾¿ØÖÆÏµÍ³¡£Ò²¾ÍÊÇ˵£¬ÔÚ Subversion ¹ÜÀíÏ£¬ÎļþºÍĿ¼¿ÉÒÔ³¬Ô½Ê±¿Õ¡£Ò²¾ÍÊÇ Subversion ÔÊÐíÄãµÄÊý¾Ý»Ö¸´µ½ÔçÆÚ°æ±¾£¬»òÕßÊǼì²éÊý¾ÝÐ޸ĵÄÀúÊ·¡£ÕýÒòΪÈç´Ë£¬Ðí¶àÈ˽«°æ±¾¿ØÖÆÏµÍ³ SVN µ±×÷Ò»ÖÖÉñÆæµÄ¡°Ê±¼ä»úÆ÷¡±¡£Ä¿Ç°£¬¾ø´ó¶àÊý¿ªÔ´Èí¼þ¶¼ÔÚʹÓà SVN ×÷Ϊ´úÂë°æ±¾¹ÜÀíÈí¼þ¡£

Subversion Ö§³Ö Linux ºÍ windows £¬¸ü¶àÊǰ²×°ÔÚ Linux Ï¡£
svn ·þÎñÆ÷ÓÐ 2 ÖÖÔËÐз½Ê½£º¶ÀÁ¢·þÎñÆ÷ºÍ½èÖúApache¡£2 ÖÖ·½Ê½ÔËÐи÷ÓÐÀû±×¡£
svn ´æ´¢°æ±¾Êý¾ÝÒ²ÓÐ 2 ÖÖ·½Ê½£ºBDBºÍFSFS¡£ÒòΪBDB·½Ê½ÔÚ·þÎñÆ÷ÖжÏʱ£¬ÓпÉÄÜËø×¡Êý¾Ý£¬ËùÒÔ»¹ÊÇFSFS·½Ê½¸ü°²È«Ò»µã£¬³£¼ûµÄ´´½¨Êý¾Ý°æ±¾¿âÒ²¶¼ÊÇʹÓÃFSFS·½Ê½¡£

Ïà¹ØÆ½Ì¨Èí¼þ

SVN+ApacheÈí¼þ°²×°°üÏÂÔØÍÆ¼ö£¬ÔÚËùÓÐÆ½Ì¨ÉϵݲװÎļþ¶¼ÔÚ´ËÕ¾ÓÐÃâ·ÑÏÂÔØ£¬Ñ¡ÔñÒªÔÚʲô²Ù×÷ƽ̨ÉϽøÐа²×°ÅäÖ㬾ÍÏÂÔØÏàÓ¦µÄ°²×°Îļþ£¬½øÐа²×°ÅäÖá£

www.open.collab.net/cn/downloads/subversion/redhat.html

ÎÒËùʹÓõ½µÄ°²×°ÎļþÈçÏ£º
CollabNet Subversion Command-Line Client v1.6.9 (for Red Hat Linux)
ÏÂÔØÎļþÃû£ºCollabNetSubversion-client-1.6.9-1.i386.rpm --¿Í»§¶Ë
CollabNet Subversion Server v1.6.9 (for Red Hat Linux)
ÏÂÔØÎļþÃû£ºCollabNetSubversion-extras-1.6.9-1.i386.rpm --·þÎñ¶Ë
CollabNet Subversion Extras v1.6.9 (for Red Hat Linux)
ÏÂÔØÎļþÃû£ºCollabNetSubversion-extras-1.6.9-1.i386.rpm --À©Õ¹¼þ
ÏÂÔØÎļþÃû£ºRPM-GPG-KEY-csvn.asc ---·ÖÀëµÄ OpenPGP Ç©ÃûÎļþ

°²×°¹ý³Ì£º

¡¡ °²×°·Ç³£¼òµ¥ÈÝÒ×£¬°²×°ÒѾ­±àÒë¹ýµÄ rpm Îļþ¼´¿É£¡

¡¡ Ê×ÏȰ²×°Ç©ÃûÎļþ£¬°²×°ËµÃ÷Ô­ÎÄÈçÏ£º

CollabNet Subversion RPMs are signed using our GPG key. As a one-time task,
import the CollabNet GPG key using the command:

sudo rpm --import /path/to/RPM-GPG-KEY-csvn.asc

The CollabNet GPG key is available for download at:
http://www.collab.net/nonav/downloads/subversion/gpg-key/RPM-GPG-KEY-csvn.asc

°´ÕÕ˵Ã÷²Ù×÷¼´¿É½øÐÐÏÂÒ»²½°²×°£¬·ñÔò»áÓÐÌáʾ¸æÖª¡£´ò¿ªÖÕ¶Ë£¬Çл»µ½ root ÕʺÅ:

[root@localhost]# rpm --import RPM-GPG-KEY-csvn.asc

Ç©ÃûÎļþ°²×°ºó£¬½ÓמͿÉÒÔ½øÐÐÏÂÃæµÄ°²×°ÁË¡£

ÏȰ²×° client £¬È»ºó server £¬×îºóÊÇ extras £¬Ë³ÐòÒ»´Î½øÐа²×°ÏÂÈ¥¡£

[root@localhost]# rpm -ivh CollabNetSubversion-client-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-cli########################################### [100%]
[root@localhost]#

client ¶Ë°²×°Íê³É£»

[root@localhost]# rpm -ivh CollabNetSubversion-server-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-ser########################################### [100%]
[root@localhost]#

server ¶Ë°²×°Íê³É£»

[root@localhost]# rpm -ivh CollabNetSubversion-extras-1.6.9-1.i386.rpm
Preparing... ########################################### [100%]
1:CollabNetSubversion-ext########################################### [100%]
[root@localhost]#
extras ¶ËҲ˳Àû°²×°Íê³É£»

ÕâÑùÈý¸ö rpm °²×°Îļþ¾Í˳Àû°²×°Íê³ÉÁË¡£ ´Ëʱ£¬ÏµÍ³Ò²¾Í×Ô¶¯Ôö¼ÓÁËÒ»¸ö csvn Óû§/×é¡£

[root@localhost]# more /etc/passwd
csvn:x:502:501:CollabNet Subversion:/opt/CollabNet_Subversion:/bin/bash

[root@localhost]# more /etc/group
csvn:x:501:

SVNÏà¹ØµÄ³ÌÐòĿ¼Ҳ´´½¨Íê³É£»



½Ó׎øÐÐSVNµÄÅäÖãº

ÔÚ /opt/CollabNet_Subversion/bin Ŀ¼ÏÂÖ´ÐÐ Configure-CollabNet-Subversion £¬Ò»²½Ò»²½°´ÕÕÌáʾ²Ù×÷¼´¿É˳ÀûÍê³É¼òµ¥µÄ·þÎñÅäÖá£

[root@localhost]# ./Configure-CollabNet-Subversion

CollabNet Subversion Server is a free download of open-source Subversion,

¡¡¡¡compiled and tested by CollabNet. For more information about CollabNet

¡¡¡¡Subversion, visit the CollabNet community at http://open.collab.net.

¡¡¡¡Would you like to configure the CollabNet Subversion Server now? [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡Welcome to CollabNet Subversion Server setup.

¡¡¡¡You will now be asked some questions to configure CollabNet Subversion.

¡¡¡¡Defaults are given in square brackets. If a default is okay for you

¡¡¡¡Just hit [Enter] to continue.

¡¡¡¡This setup can configure either Apache or svnserve as Subversion

¡¡¡¡server, for you. Would you like to configure Apache as your

¡¡¡¡Subversion server now? [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡Continuing with apache Subversion server configuration ...

¡¡¡¡Specify the base directory for Subversion repositories: [/var/svn/repositories] /opt/SVNRepositories (ÕâÀïÎÒ¸ü¸ÄÁËSVN²Ö¿â´æ´¢Â·¾¶£¬²»Ê¹ÓÃĬÈϵÄ·¾¶¡£)

¡¡¡¡Non-existing base path, Let me create and continue [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡Base path created.

¡¡¡¡Would you like to create a new Subversion repository? [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡What should be your new Subversion repository name? DEOM (ÕâÀィÁ¢Ò»¸öÃûΪ DEMO µÄ²âÊÔÓÿâ)

¡¡¡¡New repository created.

¡¡¡¡Would you like to initialize the repository with trunk/branches/tags folders? [no] (Ö±½Ó»Ø³µ)

¡¡¡¡Done.

¡¡¡¡Would you like to create another Subversion repository? [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡What should be your new Subversion repository name? svntest (ÕâÀïÔÙ½¨Á¢Ò»¸öÃûΪ svntest µÄ¿â)

¡¡¡¡New repository created.

¡¡¡¡Would you like to initialize the repository with trunk/branches/tags folders? [no](Ö±½Ó»Ø³µ)(ÔÝʱ²»µ¼Èë³õʼÊý¾Ý)

¡¡¡¡Done.

¡¡¡¡Would you like to create another Subversion repository? [yes] no (ÒѾ­½¨Á¢ÁË2¸ö²âÊÔÓÿ⣬¾Í²»ÔÙ½¨ÁË¡£)

¡¡¡¡Would you like to give the name and port that the server uses to identify itself? [yes]

¡¡¡¡Registered DNS name or IP address: 192.168.168.159 (ÕâÀïIPÊÇÖ¸ apache µÄ·þÎñ¡°IP¡±ÅäÖá£)

¡¡¡¡Server port number: 18080 (apacheµÄ·þÎñ¶Ë¿ÚºÅ)

¡¡¡¡Allow anonymous read access? [no] (Ö±½Ó»Ø³µ)

¡¡¡¡0 users currently have access to this repository:

¡¡¡¡Would you like to create a new Subversion account? [yes] (Ö±½Ó»Ø³µ)

¡¡¡¡Account username

¡¡¡¡(To re-create or delete a Subversion account, enter an existing username): svnadmin (½¨Á¢Ò»¸öSVNÕʺÅ)

¡¡¡¡Account password: (ÃÜÂë)

¡¡¡¡Retype account password: (ÖØ¸´ÃÜÂë)

¡¡¡¡Adding password for user svnadmin

¡¡¡¡Account created

¡¡¡¡Would you like to create another user account? [yes] no (ÔÝʱ²»ÐèÒªÔÙ½¨ÁíÒ»Óû§ÁË)

¡¡¡¡Would you like to configure ViewVC? [yes] (ÊÇ·ñÆôÓÃVierVC£¬Ö±½Ó»Ø³µ)

¡¡¡¡Stopping CollabNet Subversion: httpd (no pid file) not running

¡¡¡¡done

¡¡¡¡Starting CollabNet Subversion: done

¡¡¡¡(´Ëʱ£¬SVN+Apache·þÎñҲ˳ÀûµØÅäÖÃÍê³ÉÁË¡£×îºóµÄÌáʾÐÅÏ¢ÈçÏ£º)

¡¡¡¡Congratulations! You have successfully configured the CollabNet

¡¡¡¡Subversion server.

¡¡¡¡You can access your repositories at the following URL:

¡¡¡¡http://192.168.168.159:18080/svn/YOUR-REPOS-NAME

¡¡¡¡http://192.168.168.159:18080/viewvc/YOUR-REPOS-NAME

×îºó£¬ÅäÖÃÍê³Éºó½øÐмì²é£º

[root@localhost]# ps -ef|grep httpd
root 2569 1 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2588 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2595 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2596 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2597 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2599 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 2600 2569 0 18:16 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3809 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3813 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3814 2569 0 18:18 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3836 2569 0 18:21 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
csvn 3839 2569 0 18:21 ? 00:00:00 /opt/CollabNet_Subversion/bin/httpd -D csvn_installed -D viewvc_installed -k start
root 4696 4113 0 19:56 pts/1 00:00:00 grep httpd

ÔÚä¯ÀÀÆ÷ÖзÃÎÊSVN·þÎñ£»

¡¡¡¡http://192.168.168.159:18080/svn/DEMO

×¢Ò⣺ä¯ÀÀÆ÷ÉϵĵØÖ·À¸£¡



¡¡ http://192.168.168.159:18080/viewvc



С½á£º

¡¡ µ½´Ë£¬SVN+Apache·þÎñ¾Í´î½¨Íê³ÉÁË£¬SVN ÊǸöºÜºÃµÄ°æ±¾¿ØÖÆÈí¼þ£¬ºÃºÃµÄÏíÊÜËü´øÀ´µÄÎÞÏÞÀÖȤ°É£¡



SVN ÃüÁîÐÐÔÚ Linux ϵIJÙ×÷

1¡¢½«Îļþcheckoutµ½±¾µØÄ¿Â¼
svn checkout path£¨pathÊÇ·þÎñÆ÷ÉϵÄĿ¼£©
ÀýÈ磺svn checkout svn://192.168.168.159:18080/pro/domain
¼òд£ºsvn co

2¡¢Íù°æ±¾¿âÖÐÌí¼ÓеÄÎÄ ¼þ
svn add file
ÀýÈ磺svn add test.php(Ìí¼Ótest.php)
svn add *.php(Ìí¼Óµ±Ç°Ä¿Â¼ÏÂËùÓеÄphpÎļþ)

3¡¢½«¸Ä¶¯µÄÎļþÌá½»µ½°æ ±¾¿â
svn commit -m "LogMessage" [-N] [--no-unlock] PATH(Èç¹ûÑ¡ÔñÁ˱£³ÖËø£¬¾ÍʹÓÃ--no-unlock¿ª¹Ø)
ÀýÈ磺svn commit -m "add test file for my test" test.php
¼òд£ºsvn ci

4¡¢¼ÓËø/½âËø
svn lock -m "LockMessage" [--force] PATH
ÀýÈ磺svn lock -m "lock test file" test.php
svn unlock PATH

5¡¢¸üе½Ä³¸ö°æ±¾
svn update -r m path
ÀýÈ磺
svn updateÈç¹ûºóÃæÃ»ÓÐĿ¼£¬Ä¬ÈϽ«µ±Ç°Ä¿Â¼ÒÔ¼°×ÓĿ¼ÏµÄËùÓÐÎļþ¶¼¸üе½×îа汾¡£
svn update -r 200 test.php(½«°æ±¾¿âÖеÄÎļþtest.php»¹Ô­µ½°æ±¾200)
svn update test.php(¸üУ¬ÓÚ°æ±¾¿âͬ²½¡£Èç¹ûÔÚÌá½»µÄʱºòÌáʾ¹ýÆÚµÄ»°£¬ÊÇÒòΪ³åÍ»£¬ÐèÒªÏÈupdate£¬ÐÞ¸ÄÎļþ£¬ È»ºóÇå³ýsvn resolved£¬×îºóÔÙÌá½»commit)
¼òд£ºsvn up

6¡¢²é¿´Îļþ»òÕßĿ¼״̬
1£©svn status path£¨Ä¿Â¼ÏµÄÎļþºÍ×ÓĿ¼µÄ״̬£¬Õý³£×´Ì¬²»ÏÔʾ£©
¡¾?£º²»ÔÚsvnµÄ¿ØÖÆÖУ»M£ºÄÚÈݱ»Ð޸ģ»C£º·¢Éú³åÍ»£»A£ºÔ¤¶¨¼ÓÈëµ½°æ±¾¿â£»K£º±»Ëø¶¨¡¿
2£©svn status -v path(ÏÔʾÎļþºÍ×ÓĿ¼״̬)
µÚÒ»Áб£³ÖÏàͬ£¬µÚ¶þÁÐÏÔʾ¹¤×÷°æ±¾ºÅ£¬µÚÈýºÍµÚËÄÁÐÏÔʾ×îºóÒ»´ÎÐ޸ĵİ汾ºÅºÍÐÞ¸ÄÈË¡£
×¢£ºsvn status¡¢svn diffºÍ svn revertÕâÈýÌõÃüÁîÔÚûÓÐÍøÂçµÄÇé¿öÏÂÒ²¿ÉÒÔÖ´Ðеģ¬Ô­ÒòÊÇsvnÔÚ±¾µØµÄ.svnÖб£ÁôÁ˱¾µØ°æ±¾µÄԭʼ¿½±´¡£
¼òд£ºsvn st

7¡¢É¾³ýÎļþ
svn delete path -m "delete test fle"
ÀýÈ磺svn delete svn://192.168.168.159:18080/pro/domain/test.php -m "delete test file"
»òÕßÖ±½Ósvn delete test.php È»ºóÔÙsvn ci -m 'delete test file¡®£¬ÍƼöʹÓÃÕâÖÖ
¼òд£ºsvn (del, remove, rm)

8¡¢²é¿´ÈÕÖ¾
svn log path
ÀýÈ磺svn log test.php ÏÔʾÕâ¸öÎļþµÄËùÓÐÐ޸ļǼ£¬¼°Æä°æ±¾ºÅµÄ±ä»¯

9¡¢²é¿´ÎļþÏêϸÐÅÏ¢
svn info path
ÀýÈ磺svn info test.php

10¡¢±È½Ï²îÒì
svn diff path(½«Ð޸ĵÄÎļþÓë»ù´¡°æ±¾±È½Ï)
ÀýÈ磺svn diff test.php
svn diff -r m:n path(¶Ô°æ±¾mºÍ°æ±¾n±È½Ï²îÒì)
ÀýÈ磺svn diff -r 200:201 test.php
¼òд£ºsvn di

11¡¢½«Á½¸ö°æ±¾Ö®¼äµÄ²î ÒìºÏ²¢µ½µ±Ç°Îļþ
svn merge -r m:n path
ÀýÈ磺svn merge -r 200:205 test.php£¨½«°æ±¾200Óë205Ö®¼äµÄ²îÒìºÏ²¢µ½µ±Ç°Îļþ£¬µ«ÊÇÒ»°ã¶¼»á²úÉú³åÍ»£¬ÐèÒª´¦Àíһϣ©

12¡¢SVN °ïÖú
svn help
svn help ci

------------------------------------------------------------------------------

ÒÔÉÏÊdz£ÓÃÃüÁÏÂÃæÐ´¼¸¸ö²»¾­³£ÓõÄ

------------------------------------------------------------------------------

13¡¢°æ±¾¿âϵÄÎļþºÍÄ¿ ¼Áбí
svn list path
ÏÔʾpathĿ¼ÏµÄËùÓÐÊôÓÚ°æ±¾¿âµÄÎļþºÍĿ¼
¼òд£ºsvn ls

14¡¢´´½¨ÄÉÈë°æ±¾¿ØÖÆÏ µÄÐÂĿ¼
svn mkdir: ´´½¨ÄÉÈë°æ±¾¿ØÖÆÏµÄÐÂĿ¼¡£
Ó÷¨: 1¡¢mkdir PATH...
2¡¢mkdir URL...
´´½¨°æ±¾¿ØÖƵÄĿ¼¡£
1¡¢Ã¿Ò»¸öÒÔ¹¤×÷¸±±¾ PATH Ö¸¶¨µÄĿ¼£¬¶¼»á´´½¨ÔÚ±¾µØ¶Ë£¬²¢ÇÒ¼ÓÈëÐÂÔö
µ÷¶È£¬ÒÔ´ýÏÂÒ»´ÎµÄÌá½»¡£
2¡¢Ã¿¸öÒÔURLÖ¸¶¨µÄĿ¼£¬¶¼»á͸¹ýÁ¢¼´Ìá½»ÓÚ²Ö¿âÖд´½¨¡£
ÔÚÕâÁ½¸öÇé¿öÏ£¬ËùÓеÄÖмäĿ¼¶¼±ØÐëÊÂÏÈ´æÔÚ¡£

15¡¢»Ö¸´±¾µØÐÞ¸Ä
svn revert: »Ö¸´Ô­Ê¼Î´¸Ä±äµÄ¹¤×÷¸±±¾Îļþ (»Ö¸´´ó²¿·ÝµÄ±¾µØÐÞ¸Ä)¡£revert:
Ó÷¨: revert PATH...
×¢Òâ: ±¾×ÓÃüÁî²»»á´æÈ¡ÍøÂ磬²¢ÇÒ»á½â³ý³åÍ»µÄ×´¿ö¡£µ«ÊÇËü²»»á»Ö¸´
±»É¾³ýµÄĿ¼

16¡¢´úÂë¿âURL±ä¸ü
svn switch (sw): ¸üй¤×÷¸±±¾ÖÁ²»Í¬µÄURL¡£
Ó÷¨: 1¡¢switch URL [PATH]
2¡¢switch --relocate FROM TO [PATH...]

1¡¢¸üÐÂÄãµÄ¹¤×÷¸±±¾£¬Ó³Éäµ½Ò»¸öеÄURL£¬ÆäÐÐΪ¸ú¡°svn update¡±ºÜÏñ£¬Ò²»á½«
·þÎñÆ÷ÉÏÎļþÓë±¾µØÎļþºÏ²¢¡£ÕâÊǽ«¹¤×÷¸±±¾¶ÔÓ¦µ½Í¬Ò»²Ö¿âÖÐij¸ö·ÖÖ§»òÕß±ê¼ÇµÄ
·½·¨¡£
2¡¢¸Äд¹¤×÷¸±±¾µÄURLÔªÊý¾Ý£¬ÒÔ·´Ó³µ¥´¿µÄURLÉϵĸı䡣µ±²Ö¿âµÄ¸ùURL±ä¶¯
(±ÈÈç·½°¸Ãû»òÊÇÖ÷»úÃû³Æ±ä¶¯)£¬µ«Êǹ¤×÷¸±±¾ÈԾɶÔÓ³µ½Í¬Ò»²Ö¿âµÄͬһĿ¼ʱʹÓÃ
Õâ¸öÃüÁî¸üй¤×÷¸±±¾Óë²Ö¿âµÄ¶ÔÓ¦¹ØÏµ¡£

17¡¢½â¾ö³åÍ»
svn resolved: ÒÆ³ý¹¤×÷¸±±¾µÄĿ¼»òÎļþµÄ¡°³åÍ»¡±×´Ì¬¡£
Ó÷¨: resolved PATH...
×¢Òâ: ±¾×ÓÃüÁî²»»áÒÀÓï·¨À´½â¾ö³åÍ»»òÊÇÒÆ³ý³åÍ»±ê¼Ç£»ËüÖ»ÊÇÒÆ³ý³åÍ»µÄ
Ïà¹ØÎļþ£¬È»ºóÈà PATH ¿ÉÒÔÔÙ´ÎÌá½»¡£

18¡¢Êä³öÖ¸¶¨Îļþ»ò URLµÄÄÚÈÝ¡£
svn cat Ä¿±ê[@°æ±¾]...Èç¹ûÖ¸¶¨Á˰汾£¬½«´ÓÖ¸¶¨µÄ°æ±¾¿ªÊ¼²éÕÒ¡£
svn cat -r PREV filename > filename (PREV ÊÇÉÏÒ»°æ±¾,Ò²¿ÉÒÔд¾ßÌå°æ±¾ºÅ,ÕâÑùÊä³ö½á¹ûÊÇ¿ÉÒÔÌá½»µÄ)



»¶Ó­¸÷λҲ³£À´ÎÒµÄ baidu ¼ÒÔ°¿´¿´Ð´Ð´£¡

http://hi.baidu.com/yjg021
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. wst021 ÓÚ 2010-04-21 15:10:14·¢±í:

    {:3_114:} ×Ô¼º×ù×ùɳ·¢£¬ÏíÊÜһϳɹû£¡

    ֮ǰ·¢ÌùѯÎÊ£¬ÓÐÈËÔÚ RedHat Linux Éϰ²×°¹ýSVN·þÎñÂð£¬Ã»ÓÐÈ˻شð£¬ÏÖÔÚÎÒ¾ÍÀ´·¢Ò»Ìù£¬Ï£Íû¶ÔÈËÓаïÖú£¬ÒªÊÇÄܰïÖúµ½ÄãÁË£¬ÇëÄã¸úÌùÁôÑÔ£¬Ð»Ð»£¡