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

LinuxÓëWindows CVS·þÎñÆ÷ÅäÖÃÓëʹÓÃ

·¢²¼Ê±¼ä:2006-10-24 09:58:15À´Ô´:ºìÁª×÷Õß:ÑϺ®
¡¡¡¡µÚÒ»²¿·Ö CVS·þÎñÆ÷µÄÅäÖÃ(ÒÔ1.10°æ)

¡¡¡¡1¡¢ CVS¼òÊöÓëCVS·þÎñÆ÷µÄ°²×°£º


¡¡¡¡CVSÊÇÄ¿Ç°±È½ÏÁ÷ÐÐÓëÓÅÐãµÄ°æ±¾¹ÜÀíÓë¿ØÖƹ¤¾ß£¬ËüÉîÊÜ´ó¶àÊý¿ª·¢ÈËÔ±Óëϵͳ¹ÜÀíµÄϲ°®£¬Í¬Ê±Ò²ÊÇÓÃÀ´¹ÜÀíÆäËüÈÕ³£Îĵµ£¨Èçword¹¤×÷ÎĵµÖ®ÀࣩµÄÒ»¸öÇ¿ÓÐÁ¦µÄ¹¤¾ß¡£ÕâÒ»²¿·Ö½«¶ÔCVS·þÎñÆ÷µÄ°²×°¡¢ÅäÖÃÓëʹÓ÷½·¨½øÐмòµ¥¡¢¶óÒªµÄ½éÉÜ£¬ÒÔ°ïÖú´ó¼Ò¾¡¿ìµÄʹÓÃCVSÀ´½øÐÐһЩ°æ±¾µÄ¹ÜÀíÓë¿ØÖƹ¤×÷¡£

¡¡¡¡2¡¢ CVS·þÎñÆ÷µÄ°²×°

¡¡¡¡CVS·þÎñÆ÷°æ¿ÉÒÔ´ÓÍøÉϵĺܶàµØ·½ÏÂÔص½£¬Ò²¿ÉÒÔµ½CVSµÄ¹Ù·½ÍøÕ¾½øÐÐÏÂÔØ¡£¸ù¾ÝÄãËùʹÓõÄϵͳ£¬ÏÂÔØÏàÓ¦µÄ°æ±¾£¬È»ºó½øÐа²×°¡£ÒòΪµ±Ç°´ó²¿·ÖÈËÊÇÔÚLinuxÏÂʹÓÃCVS·þÎñÆ÷½øÐа汾¹ÜÀí£¬²¢ÇÒRedhat LinuxÊÇÄ¿Ç°×îÁ÷ÐеÄÒ»¸öLinux·¢ÐаæÖ®Ò»£¬ËùÒÔ±¾ÎĽ«Ö÷Òª»ùÓÚRedhat Linux½øÐнéÉÜ¡£Ê×ÏÈÏÂÔØCVS·þÎñÆ÷µÄrpm°ü£¬µ±È»Ò²¿ÉÒÔÏÂÔØÆäËü·½Ê½µÄ°üÈçÔ´³ÌÐò°ü£¬ÕâÒ²¾ÍÊÇLinuxµÄÒ»¸öÓŵãÖ®Ò»¡£È»ºó²ÉÓÃÒÔÏÂÃüÁî½øÐа²×°£º

[code]¡¡¡¡rpm -ivh cvs-1.10.8-3.i386.rpm[/code]

¡¡¡¡3¡¢ÅäÖÃ/etc/servicesÎļþ£º

¡¡¡¡°²×°ÍêÖ®ºóµÄµÚÒ»¼þʾÍÊÇÒªÅäÖÃCVS·þÎñÆ÷µÄÅäÖÃÎļþ£¬Ê¹ÆäÄÜÕý³£µÄ¹¤×÷¡£Ê×ÏÈÔÚservicesÎļþÖÐÌí¼Ócvspserver£¬Ê¹Æä³ÉΪLinuxµÄÒ»ÖÖ·þÎñÒ²¾ÍÊÇcvs·þÎñÆ÷Àý³ÌµÄÈë¿Ú£¬ÅäÖÃÈçÏ£º

[code]cvspserver 2401/tcp # cvs client/server operations
¡¡¡¡cvspserver 2401/udp # cvs client/server operations[/code]

¡¡¡¡4¡¢ÅäÖÃxinetd£¬ÓÃxinetdÀ´Æô¶¯CVS·þÎñÆ÷£º

¡¡¡¡½øÈëµ½/etc/xinetd.d/Ŀ¼£¬È»ºó±à¼­Ò»¸öÎı¾Îļþ£¬Ãû×ÖÒ»¶¨ÒªÓë/etc/servicesÖеÄÈë¿ÚÃû×ÖcvspserverÒ»Ö£¬ËùÒÔÕâÀïÓÃcvspserver×÷ΪÎļþÃû£¬ÎļþµÄÄÚÈÝÈçÏÂËùʾ£º

[code]service cvspserver
¡¡¡¡{
¡¡¡¡disable = no
¡¡¡¡socket_type = stream
¡¡¡¡wait = no
¡¡¡¡user = root
¡¡¡¡env = HOME=
¡¡¡¡server = /usr/bin/cvs
¡¡¡¡server_args = -f --allow -root=/home/cvsroot pserver
//Ö¸¶¨ÈÏÖ¤·½Ê½Îªpserver£¬×¢Ò⣺-f
¡¡¡¡}[/code]

¡¡¡¡×¢Ò⣺a¡¢serviceºóÃæµÄÃû³ÆÒ»¶¨ÒªºÍÄãÔÚ/etc/serviceÎļþÖеÄcvs·þÎñÃû³ÆÒ»Ñù¡£

¡¡¡¡b¡¢env = HOME=ÕâÒ»ÐеÄÄ¿µÄ¾ÍÊÇΪÁ˽â¾öÔÚÖ´ÐÐһЩcvs²Ù×÷ʱ²úÉúµÄ¶ÁÈ¡/root/.cvsignoreÎļþµÄ´íÎó£¬ÉÏÃæenvÄÇÐеÄÒâ˼¾ÍÊÇÔÚÔËÐÐcvs·þÎñµÄʱºò½«»·¾³±äÁ¿HOMEÖÿգ¬ÕâÑùËäȻִÐÐcvsµÄÓû§ÊÇroot£¬µ«ÊÇÓÉÓÚûÓÐÁËHOMEÕâ¸ö»·¾³±äÁ¿£¬ËùÒÔcvs¾Í²»»áÔÚÈ¥¶ÁÈ¡/root/.cvsignoreÎļþÁË¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 3 ÌõÆÀÂÛ

  1. ÑϺ® ÓÚ 2006-10-24 10:03:32·¢±í:

    ¡¡¡¡6¡¢ ÐÞ¸ÄÖ®ºó°ÑÎļþÌá½»µ½CVS·þÎñÆ÷

    ¡¡¡¡a)¡¢Ö»ÓÐÒ»¸öÓû§¶ÔÎļþ½øÐÐÐ޸ĵÄÇé¿ö

    ¡¡¡¡ÓÃ×Ô¼ºÏ²»¶µÄ±à¼­Æ÷¶Ôcheckout³öÀ´µÄÎļþ½øÐÐÐ޸ģ¬ÐÞ¸ÄÖ®ºóµÄÎļþÔÚûÓÐÌύ֮ǰ»áÊǺìÉ«µÄ£¬ÈçÏÂͼexample.hÎļþ.

    ¡¡¡¡Ñ¡ÖкìÉ«µÄÎļþexample.hºóÓÒ»÷Ñ¡Ôñ¡°Commit Selection¡±Ñ¡ÏÈç¹ûûÓÐÆäËüÓû§Ò²¶ÔÆä½øÐÐÐ޸IJ¢ÒѾ­Ìá½»µ½CVS·þÎñÆ÷ÉÏ£¬Ò»ÇÐÕý³£µÄ»°½«°Ñexample.hÎļþÌá½»µ½CVS·þÎñÆ÷²¢°Ñͼ±ê»Ö¸´³ÉÔ­À´µÄÑÕÉ«¡£

    ¡¡¡¡b)¡¢Á½¸ö»òÁ½¸öÒÔÉϵÄÓû§¶ÔͬһÎļþµÄ²»Í¬²¿·Ö½øÐÐÐ޸ĵÄÇé¿ö

    ¡¡¡¡ÕâÖÖÇé¿ö¾ÍÊÇÈçÓû§AÓëÓû§B¶¼checkoutÁËÎļþexample.h£¬ÄÚÈÝÈçÏ£º

    [code]int callby (int count)
    ¡¡¡¡{
    ¡¡¡¡printf("ExcelStor!\n");
    ¡¡¡¡}
    ¡¡¡¡void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡//added by my cvs
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡}
    ¡¡¡¡int mainexample()
    ¡¡¡¡{
    ¡¡¡¡printf("OK\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡È»ºóÓû§AÐ޸ijÉÈçÏ£¬²¢Ìá½»µ½CVS·þÎñÆ÷£¨Ò»°ã½«Õý³£Ìá½»£©£º

    [code]int callby (int count)
    ¡¡¡¡{//add
    ¡¡¡¡printf("ExcelStor!\n");
    ¡¡¡¡}
    ¡¡¡¡void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡//added by my cvs
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡}
    ¡¡¡¡int mainexample()
    ¡¡¡¡{//add
    ¡¡¡¡printf("OK\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡½Ó×ÅÓû§BÐ޸ijÉÈçÏ£º

    [code]¡¡int callby (int count)
    ¡¡¡¡{//add
    ¡¡¡¡printf("ExcelStor!\n");
    ¡¡¡¡}
    ¡¡¡¡void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡//modified
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡}
    ¡¡¡¡int mainexample()
    ¡¡¡¡{//add
    ¡¡¡¡printf("OK\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡µ±Óû§BÑ¡Ôñ¡°Commit Selection¡±Ê±½«Ìáʾ£º

    [code]cvs server: Up-to-date check failed for `example.h'
    ¡¡¡¡cvs [server aborted]: correct above errors first![/code]

    ¡¡¡¡´Ëʱ±íÃ÷ÒѾ­ÓÐÓû§¶Ôͬһ¸öÎļþexample.h½øÐÐÐ޸IJ¢Ìá½»µ½CVS·þÎñÆ÷£¬ÕâʱҪÏÈÑ¡Ôñ¡°Update Selection¡±¶Ô±¾µØexample.hÓëCVS·þÎñÆ÷ÉϵÄexample.hÎļþ½øÐÐͬ²½ÓëºÏ²¢£¬²»ÓÃÑ¡ÖгöÏÖµÄÈκÎÑ¡Ïֱ½ÓÑ¡Ôñ¡°OK¡±£¬Õâʱ½«ÏÔʾÈçÏ£º

    [code]cvs -z9 update example.h (in directory C:\my cvs\STW\src\)
    ¡¡¡¡RCS file: /home/cvsroot/STW/src/example.h,v
    ¡¡¡¡retrieving revision 1.5
    ¡¡¡¡retrieving revision 1.6
    ¡¡¡¡Merging differences between 1.5 and 1.6 into example.h
    ¡¡¡¡M example.h
    ¡¡¡¡
    ¡¡¡¡***** CVS exited normally with code 0 *****[/code]

    ¡¡¡¡±íÃ÷Óû§BÓëÓû§AµÄÐÞ¸ÄÒѾ­ºÏ²¢³É¹¦£¬Í¬Ê±Îļþexample.hµÄͼ±êÒ²½«±ä³ÉºìÉ«£¬ºÏ²¢ºóµÄÎļþÊÇ´æ·ÅÔÚÓû§BµÄ±¾µØ»úÉÏ£¬ÎªÁ˸üе½CVS·þÎñÆ÷»¹±ØÐëÑ¡ÖÐexample.h²¢ÓÒ»÷Ñ¡Ôñ¡°Commit Selection¡±²ÅÄÜ°ÑÓû§AÓëÓû§BµÄÐ޸ĺϲ¢ºóµÄ½á¹ûÌá½»µ½CVS·þÎñÆ÷ÉÏ¡£×¢£ºM±íʾ´ËÎļþÒѾ­±»Ð޸Ĺý¡£

    ¡¡¡¡c)¡¢Á½¸ö»òÁ½¸öÒÔÉϵÄÓû§¶Ôͬһ¸öÎļþµÄÏàͬ²¿·Ö½øÐÐÐ޸ĵÄÇé¿ö

    ¡¡¡¡ÕâÖÖÇé¿ö¾ÍÊÇÈçÓû§AÓëÓû§B¶¼ÏÂÔØÁËÎļþexample.h£¬ÄÚÈÝÈçÏ£º

    [code]void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡È»ºóÓû§A°ÑÎļþÐ޸ijÉÈçÏ£¬²¢Ìá½»µ½CVS·þÎñÆ÷£¨Ò»°ã½«Õý³£Ìá½»£©£º

    [code]void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡printf("I am Pat\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡½Ó×ÅÓû§BÓÖ°ÑÎļþÐ޸ijÉÈçÏ£º

    [code]void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡printf("I love you Cather\n");
    ¡¡¡¡}[/code]

    ¡¡¡¡Èç¹ûÓû§BÕâʱѡÔñ¡°Commit Selection¡±×¼±¸°ÑÐ޸Ľá¹ûÌá½»µ½CVS·þÎñÆ÷£¬´Ëʱ½«ÏÔʾÈçϵĴíÎóÌáʾ£º

    [code]cvs -z9 commit -m "update in 11:20" example.h (in directory C:\my cvs\STW\src\)
    ¡¡¡¡cvs server: Up-to-date check failed for `example.h'
    ¡¡¡¡cvs [server aborted]: correct above errors first!
    ¡¡¡¡
    ¡¡¡¡***** CVS exited normally with code 1 *****[/code]

    ¡¡¡¡±íÃ÷Óû§BµÄÐÞ¸ÄÓëÆäËüÓû§µÄÐ޸ijåÍ»£¬ÕâʱҪÏÈÑ¡Ôñ¡°Update Selection¡±£¬½«ÏÔʾÈçÏÂÌáʾ£º

    [code]¡¡cvs -z9 update example.h (in directory C:\my cvs\STW\src\)
    ¡¡¡¡RCS file: /home/cvsroot/STW/src/example.h,v
    ¡¡¡¡retrieving revision 1.9
    ¡¡¡¡retrieving revision 1.10
    ¡¡¡¡Merging differences between 1.9 and 1.10 into example.h
    ¡¡¡¡rcsmerge: warning: conflicts during merge
    ¡¡¡¡cvs server: conflicts found in example.h
    ¡¡¡¡C example.h
    ¡¡¡¡
    ¡¡¡¡***** CVS exited normally with code 0 *****[/code]

    ¡¡¡¡example.hÇ°ÃæµÄC±íʾÓëÆäËüÓû§µÄÐÞ¸ÄÓгåÍ»£¬²¢ÇÒÎļþµÄͼ±ê»á¼ÓÏÔʾһ¸ö¡°C¡±£¬Ë«»÷example.h½«ÏÔʾexample.hµÄÄÚÈÝ£¬ÈçÏ£º

    [code]void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡printf("I am Yanxi\n");
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡<<<<<<< example.h
    ¡¡¡¡printf("I love you Yanxi,too!\n"); //Õⲿ·ÖΪÄãµÄÐÞ¸Ä
    ¡¡¡¡=======
    ¡¡¡¡printf("I love you Cather!\n"); //Õⲿ·ÖΪÆäËüÓû§µÄÐÞ¸Ä
    ¡¡¡¡>>>>>>> 1.10
    ¡¡¡¡}[/code]

    ¡¡¡¡ÕâʱÄãÓ¦¸ÃÓëÓû§A½øÐÐЭÉÌÒÔ¾ö¶¨×îÖÕÒªÔõÑùÐ޸ġ£±ÈÈ磬¿ÉÒÔÐ޸ijɣº

    [code]void main(int argv,char *argc)
    ¡¡¡¡{
    ¡¡¡¡printf("I am Yanxi\n");
    ¡¡¡¡printf("I am Cather\n");
    ¡¡¡¡printf("I love you Yanxi,too!\n"); //Õⲿ·ÖΪÄãµÄÐÞ¸Ä
    ¡¡¡¡printf("I love you Cather!\n"); //Õⲿ·ÖΪÆäËüÓû§µÄÐÞ¸Ä
    ¡¡¡¡}[/code]

    ¡¡¡¡È»ºóÑ¡Ôñ¡°Commit Selection¡±½øÐÐÌá½»£¬½«ÏÔʾÈçϵÄÌáʾÐÅÏ¢£º

    [code]cvs -z9 commit -m "update in 11:20" example.h (in directory C:\my cvs\STW\src\)
    ¡¡¡¡Checking in example.h;
    ¡¡¡¡/home/cvsroot/STW/src/example.h,v <-- example.h
    ¡¡¡¡new revision: 1.11; previous revision: 1.10
    ¡¡¡¡done
    ¡¡¡¡
    ¡¡¡¡***** CVS exited normally with code 0 *****[/code]

    ¡¡¡¡±íÃ÷Óû§AÓëÓû§µÄÐÞ¸ÄÒѾ­ºÏ²¢³É¹¦¡£ÕâÑù£¬ÏòCVS·þÎñÆ÷Ìá½»ÎļþËù»áÓöµ½µÄÎÊÌâÒ²»ù±¾ÉϾÍÊÇÕâЩ£¬Óû§Òª¸ù¾ÝËùÓöµ½µÄʵ¼ÊÎÊÌâ½øÐÐÐ޸ġ£

    ¡¡¡¡7¡¢ ÏòCVS·þÎñÆ÷Ìí¼ÓÐÂÎļþ

    ¡¡¡¡ÔÚ±¾µØÌí¼ÓÎļþºó£¬ÒªÌá½»µ½·þÎñ¶Ë¡£ÏÈÑ¡ÖÐÎļþ£¬È»ºóµã»÷¡°Ìí¼Ó°´Å¥¡±£¬Ìí¼ÓÎļþºó£¬ÔÙÔÚÓÒ¼ü²Ëµ¥ÖÐÑ¡ÔñÌá½»ÃüÁî¡°Commit Selection¡±¼´¿É¡£Ñ¡ÖÐÎļþexample.h.bak£¬ÒòΪexample.h.bakµ±Ç°²»ÊÇCVSµÄÎļþ£¬´Ëʱ¡°Ìí¼Ó°´Å¥¡±½«Óɲ»¿Éѡ״̬±ä³É¿Éѡ״̬£¬ËùÒÔStatusÖÐÏÔʾΪ¡°NonCvs file¡±£¬Ñ¡Ôñ¡°Ìí¼Ó°´Å¥¡±Ö®ºóexample.h.bakͼ±ê½«±ä³ÉºìÉ«²¢Ôö¼ÓÁËÒ»¸öA×Öĸ£¬ÈçÏ£º

    ¡¡¡¡È»ºóÑ¡ÖÐexample.h.bak£¬ÓÒ»÷£¬Ñ¡Ôñ¡°Commit Selection¡±°ÑÎļþexample.h.bakÌá½»µ½CVS·þÎñÆ÷É϶ø³ÉΪCVSµÄÒ»¸öÎļþ¡£

    ¡¡¡¡8¡¢ ½áÊøÓï

    ¡¡¡¡À´µ½ÕâÀÄã»ù±¾ÉÏÒѾ­ÄÜΪ×Ô¼º»ò¹«Ë¾ÅäÖÃÒ»¸öʵÓõÄCVS·þÎñÆ÷ÓëWinCVS¿Í»§¶Ë£¬ÅäºÏʹÓÃCVS½øÐÐϵͳ¿ª·¢»òÆäËüÎĵµµÄ°æ±¾¹ÜÀíÓë¿ØÖÆ¡£

  2. ÑϺ® ÓÚ 2006-10-24 10:01:15·¢±í:

    ¡¡¡¡µÚ¶þ²¿·Ö WinCVSµÄÅäÖÃÓëʹÓ÷½·¨

    ¡¡¡¡1¡¢ WinCVS¼ò½é£º


    ¡¡¡¡WinCVSÊÇCVSµÄÒ»¸ö¿Í»§¶ËÈí¼þ£¬ËüÔËÐÐÔÚWindowsÉÏ£¬ÓÃÀ´ÔÚWindowsÉϵǼCVS·þÎñÆ÷£¬È»ºó½øÐÐһЩCVSÏà¹ØµÄ²Ù×÷Óë¹ÜÀí¡£ÓÉÓÚµ±Ç°ºÜ¶àµÄÆóÒµÄÚ²¿¶¼²ÉÓÃLinux/Unix×ö·þÎñÆ÷£¬¶øÓÃWindows×ö¿Í»§¶Ë£¬ËùÒÔ£¬WinCVSÓëCVS·þÎñÆ÷ÅäºÏʹÓý«×é³É×îÇ¿ÓÐÁ¦µÄ°æ±¾¿ØÖÆÓë¹ÜÀíµÄϵͳ֮һ¡£

    ¡¡¡¡2¡¢ WinCVSµÄÏÂÔØÓë°²×°£»

    ¡¡¡¡×îеÄWinCVS¿ÉÒÔ´Óhttp://sourceforge.net/project/showfiles.php?group_id=10072µØÖ·ÏÂÔص½£¬Ò²¿ÉÒÔÔÚhttp://sourceforge.net/project ÉÏÏÂÔص½×îеĻòÆäËü°æ±¾µÄWinCVS¡£

    ¡¡¡¡ÏÂÔص½ÏàÓ¦µÄ°æ±¾ºó¸ù¾ÝÏòµ¼½øÐа²×°£¬ÒѾ­ÒªÊ¹ÓÃCVSµÄÓû§£¬°²×°Õâ¸öWinCVSÓ¦¸ÃûʲôÎÊÌâ°É£¡

    ¡¡¡¡3¡¢ ÅäÖÃWinCVS£º

    ¡¡¡¡µÚÒ»¡¢ Authentication£ºÓÃÀ´ÅäÖÃcvs·þÎñÆ÷µÄÈÏÖ¤·½Ê½£¬¿ÉÒÔ´ÓÏÂÀ­¿òÖÐÑ¡ÔñÆäËüµÄÈÏÖ¤·½Ê½£¬²»¹ýÒ»°ãֻҪѡÔñĬÈϵÄpserver·½Ê½¾Í¿ÉÒÔ£¬Òª×¢ÒâµÄÊDZØÐëÓëcvs·þÎñÆ÷ÅäÖÃʱËùÖ¸¶¨µÄÈÏÖ¤·½Ê½Ò»Ö¡£

    ¡¡¡¡µÚ¶þ¡¢ Path£ºÓÃÀ´ÅäÖÃcvsÔÚ·þÎñÆ÷ÉϵÄÖ÷Ŀ¼·¾¶£¬Ò²¾ÍÊÇ·þÎñÆ÷ÉÏÓýøÐÐcvs³õʼ»¯µÄĿ¼£¬È磺/home/cvsroot¡£

    ¡¡¡¡µÚÈý¡¢ Host Address£ºÓÃÀ´ÅäÖÃcvs·þÎñÆ÷ËùÔÚ·þÎñÆ÷µÄµØÖ·£¬¿ÉÒÔÊÇIPµØÖ·£¬Ò²¿ÉÒÔÊÇDNSÃû£¬È磺10.104.1.204¡£

    ¡¡¡¡µÚËÄ¡¢ User name£ºÓÃÀ´ÅäÖÃҪʹÓÃЩWinCVSÀ´µÇ¼CVS·þÎñÆ÷µÄÓû§Ãû£¬È磺cvsyxwu£¬Óû§µÄµÇ¼±ØÐëÓɹÜÀíÔ±°ÑÆäÌí¼ÓcvsÓû§×éÖУ»

    ¡¡¡¡µÚÎå¡¢ CVSROOT£º´ËÏîÒ»°ã¶¼²»ÐèÒªÓû§½øÐÐÐ޸ģ¬Óû§ÔÚÊäÈëÉϱߵļ¸¸öÑ¡Ïîʱ£¬ÏµÍ³½«×Ô¶¯¸ù¾ÝÓû§µÄÊäÈëÉú³É´ËÏîµÄÏàÓ¦ÄÚÈÝ¡£

    ¡¡¡¡b¡¢ È«¾ÖÑ¡ÏîµÄÉèÖã¬ÔÚÉÏÒ»¸ö½çÃæÉÏÑ¡Ôñ¡°Globals¡±´ËÏîµÄÅäÖÃÖ÷ÒªÊÇҪעÒâÕ⼸ѡÏ

    ¡¡¡¡µÚÒ»£¬Checkout read-only²»ÒªÑ¡ÉÏ£¬·ñÔò£¬checkout³öÀ´µÄÔ´´úÂ뽫²»ÔÊÐíÓû§½øÐÐÐ޸ģ¬²¢ÇÒ´ËÑ¡ÏîĬÈÏÊÇÑ¡Öеġ£

    ¡¡¡¡µÚ¶þ£¬Prune (remove) empty directoriesÒ²²»ÒªÑ¡ÉÏ£¬·ñÔò£¬»á×Ô¶¯É¾³ý¿ÕĿ¼¡£

    ¡¡¡¡µÚÈý£¬¶ÔÒ»°ãÅäÖÃûÓÐÌØÊâÒªÇóµÄ£¬°ÑDirty files support¡¢Supply control when addingÓëTCP/IP compressionÑ¡ÏîÑ¡ÖС£

    ¡¡¡¡4¡¢ µÇ¼·þÎñÆ÷£º

    ¡¡¡¡Ñ¡ÔñAdmin->login£¬½«³öÏÖÈç϶Ի°¿òÒªÇóÓû§ÊäÈëµÇ¼¿ÚÁî,ÊäÈë¿ÚÁîºó£¬Ñ¡Ôñ¡°OK¡±°´Å¥£¬Èç¹ûCVS·þÎñÆ÷ÓëWinCVSµÄÅäÖö¼Ã»³ö´íµÄ»°£¬½«ÔÚCVSµÄ״̬À¸ÖÐÌáʾ£º

    [code]¡¡cvs -z9 -d :pserver:cvsyxwu@10.104.1.204:/home/cvsroot login
    ¡¡¡¡Logging in to :pserver:cvsyxwu@10.104.1.204:2401/home/cvsroot
    ¡¡¡¡***** CVS exited normally with code 0 *****[/code]

    ¡¡¡¡code 0±íʾÕýÈ·µÄµÇ¼£»¶øÈç¹û³ö´íµÄ»°£¬½«ÊÇcode 1£¬ÄÇôҪ¸ù¾Ý´íÎóµÄÌáʾ½øÐÐÏàÓ¦µÄÐ޸ġ£

    ¡¡¡¡5¡¢ ´ÓCVS·þÎñÆ÷ÉÏcheck outÏàÓ¦µÄÄ£¿é£º

    ¡¡¡¡µÚÒ»£¬ ÔÚworkspaceÖеÄModulesÑ¡ÖÐÒª´æ·ÅcheckoutÄ£¿éµÄĿ¼¡£

    ¡¡¡¡µÚ¶þ£¬ Ñ¡ÔñCreate->Checkout Modeles£¬½«³öÏÖÈç϶Ի°¿ò¡£

    ¡¡¡¡ÆäÖУ¬Module name and path on the server¾ÍÊÇÒª´æ·Åcheckout ÄÚÈݵÄĿ¼£¬ÓÉÓû§ÊäÈ룻¶øLocal folder to checkout to¾ÍÊǵÚÒ»ÖÐÓû§ËùÑ¡ÔñµÄĿ¼¡£

  3. ÑϺ® ÓÚ 2006-10-24 10:00:07·¢±í:

    ¡¡¡¡5¡¢ÅäÖÃCVSÓû§ÓëcvsrootµÄÊôÖ÷ÓëÊô×飺

    ¡¡¡¡Ê×ÏȽ¨Á¢Ò»¸öÓû§×écvs£¬¿ÉÒÔʹÓÃgroupadd»òÕßaddgroupÃüÃû£¬Ò²¿ÉÒÔÖ±½Ó±à¼­/etc/groupÎļþÌí¼ÓÕâ¸ö×飬ȻºóÌí¼ÓÒ»¸öÓû§cvsroot£¬ È»ºóÐÞ¸Ä/etc/passwdÎļþʹcvsrootÓû§µÄȱʡ×éÊÇcvs×飬¶ø²»ÊÇcvsroot×飨Ҳ¾ÍÊÇÐ޸ģ©¡£ÔÚ/homeĿ¼Ï½¨Á¢cvsrootĿ¼£¨Ò²¿ÉÒÔÔÚÆäËüÄãϲ»¶µÄĿ¼Ï½¨£©£¬È»ºóÐÞ¸Ä/home/cvsrootµÄÊôÖ÷¼°ÊôÐÔ£º

    [code]#chown cvsroot.cvs /home/cvsroot
    ¡¡¡¡#chmod 771 /home/cvsroot[/code]

    ¡¡¡¡6¡¢ vs½øÐгõʼ»¯£º

    ¡¡¡¡°²×°ÍêCVS·þÎñÆ÷Ö®ºóµÄÁíÒ»¼þÖØÒªµÄÊÂÇé¾ÍÊÇÒª³õʼ»¯CVS·þÎñÆ÷µÄ¸ùĿ¼£¬ÒÔºó´´½¨µÄCVSÏîÄ¿¶¼½«½¨Á¢ÔÚÕâ¸öĿ¼Ï£¬²ÉÓõÄÃüÁîÈçÏ£º

    [code]¡¡¡¡££cvs -d /home/cvsroot init[/code]

    ¡¡¡¡ÕâÑùĿ¼/home/cvsroot¾Í³ÉΪCVS·þÎñÆ÷µÄ¸ùĿ¼£¬ÒÔºó´´½¨µÄĿ¼¶¼½«Ä¬ÈϵĴæ·ÅÔÚÕâ¸öĿ¼Ï¡£

    ¡¡¡¡7¡¢µÇ¼cvs·þÎñÆ÷£¨ÔÚLinux»òÆäËüUnixϵͳϽøÐеǼµÄÇé¿ö£©£º

    ¡¡¡¡a¡¢Èç¹ûÊÇÔ¶³ÌµÇ¼£¬²ÉÓÃÒÔÏÂÓï·¨£º

    [code]¡¡¡¡#cvs -d :pserver:cvsroot@host:/home/cvsroot login
    CVS password£º//ÊäÈëÓû§cvsrootµÄ¿ÚÁ[/code]

    ¡¡¡¡Èç¹ûûÓгöÏÖÆäËüµÄÈκÎÌáʾ¾Í±íʾµÇ¼³É¹¦ÁË£¬·ñÔòÒª¸ù¾ÝÌáʾ½øÐÐÏàÓ¦µÄÐ޸ġ£ ÏÂÃæ¶ÔµÇ¼ÃüÁîµÄÓï·¨½øÐÐ˵Ã÷£º

    ¡¡¡¡ÆäÖУ¬:pserver±íʾ²ÉÓÃpserver·½Ê½½øÐÐÓû§µÇ¼ÈÏÖ¤£¬Ò»°ãµÄCVS·þÎñÆ÷¶¼²ÉÓÃÕâÖÖ·½Ê½£¬µ±È»Ò²¿ÉÒÔ²ÉÓÃÆäËü·½Ê½£¬¾ßÌå²Î¿¼ÏàÓ¦µÄ×ÊÁÏ£»:cvsroot±íʾҪµÇ¼µÄÓû§Ãû£¬Ö»ÒªÊÇcvs×éµÄ³ÉÔ±¶¼¿ÉÒÔ£¬È磺cather£»@host±íʾҪµÇ¼µÄ·þÎñÆ÷£¬¿ÉÒÔÊÇDNSÃû£¬Ò²¿ÉÒÔÊÇIPµØÖ·£¬È磺10.104.1.204£»:/home/cvsroot±íʾCVSÔÚ·þÎñÆ÷ÉϵÄĿ¼£¬Ò²¿ÉÒÔÊÇÆäËüĿ¼£¨ÓɵÚ6ÖÐÄãËùÖ¸¶¨µÄÓÃÀ´×öinit³õʼ»¯µÄĿ¼¾ö¶¨£©£»Ìáʾ£ºÒ²¿ÉÒÔ°Ñexport CVSROOT=:pserver:jchuang@192.168.0.8:/home/cvsrootÕâÒ»¾äÖ±½ÓдÔÚÓû§µÄ³õʼ»¯ÎļþÖУ¨È磺.bash_profile£©£¬ÕâÑùÓû§Ã¿´ÎµÇ¼ʱ£¬Ö»ÐèÊäÈ룺

    [code]¡¡¡¡££cvs login[/code]

    ¡¡¡¡È»ºóÊäÈëÏàÓ¦µÄ¿ÚÁî¾Í¿ÉÒԵǼµ½cvs·þÎñÆ÷ÉÏ¡£

    ¡¡¡¡b¡¢Èç¹ûÊDZ¾µØµÇ¼£¬¿ÉÒÔÖ±½Ó°Ñexport CVSROOT=/home/cvsrootÕâÒ»¾äдÔÚÓû§µÄ³õʼ»¯ÎļþÈ磺.bash_profileÖУ»È»ºóÖ±½Ó

    ¡¡¡¡8¡¢ÏòCVSÌí¼ÓеÄÏîÄ¿Ä£¿é

    ¡¡¡¡Ò»°ãÎÒÃǶ¼ÒѾ­ÓÐÒ»¸ö»ò¶à¸öÏîÄ¿ÁË£¬ÕâÑùÎÒÃÇ¿ÉÒÔÓÃÏÂÃæ²½ÖèÉú³ÉÒ»¸öеÄCVSÏîÄ¿¡£½«Ò»¸ö¹¤³ÌÎļþÖÃÓÚCVsÖнøÐа汾¿ØÖÆ£¬ÔÚCVS ÊõÓïÖгÆ×÷µ¼Èë(import)¡£´ÓÃû×ÖÉϾͿÉÒÔ¿´³ö£¬ÔÚµ¼ÈëÇ°ÐèҪΪ´Ë×÷Щ׼±¸¹¤×÷¡£

    ¡¡¡¡ÊäÈë²Ù×÷µÄ»ù±¾ÒªÇóÊÇÓиö"¸É¾»"µÄĿ¼½á¹¹¡£"¸É¾»"µÄÒâ˼ÊDz»ÐèÒª°æ±¾¿ØÖƵÄÎļþ¶¼±»ÒÆ×ßÁË£¨Èç±àÒëÉú³ÉµÄÎļþ£¬±¸·ÝÎļþµÈµÈ£©¡£Èç¹û¹¤³ÌÒѾ­¿ªÊ¼Ò»¶Îʱ¼äÁË£¬Õâ¾ÍÏԵúÜÖØÒª¡£ÔÚĿ¼ÖÐÒ²ÐíÓÐЩÊDz»´òË㽫ÆäÖÃÓÚ°æ±¾¿ØÖÆϵÄÎļþ£¬µ«ÊÇÓÖÏ뽫ËûÃÇ·ÅÔÚÕâÀÕâÖÖÇé¿öÏ£¬ÄãÒªÔÚÊäÈë֮ǰ½«ËüÃÇÒÆ×ߣ¬È»ºóÔÙÒÆ»ØÀ´¡£

    ¡¡¡¡×¢ÒâµÄÊÇCVS ÈÏΪ¿ÕĿ¼ÊDz»´æÔڵġ£Èç¹ûÏëÔö¼ÓÒ»¸ö¼È²»°üº¬ÎļþÓÖ²»°üº¬×ÓĿ¼µÄĿ¼£¬ÐèÒªÔÚÆäÏ´´½¨Ò»¸öÑÆÎļþ¡£½¨ÒéÄã´´½¨Ò»¸öÃûΪ README.txt µÄÎļþ£¬ÆäÄÚÈÝΪ¶ÔĿ¼µÄ¼òҪ˵Ã÷¡£

    ¡¡¡¡½øÈëµ½ÒÑÓÐÏîÄ¿µÄĿ¼£¬±ÈÈç½Ð cvstest£º

    [code]¡¡¡¡¡¡¡¡$cd cvstest[/code]

    ¡¡¡¡ÔËÐÐÃüÁÏîÄ¿Îļþµ¼Èëµ½cvs²Ö¿âÖУº

    [code]¡¡¡¡¡¡¡¡$cvs import -m "this is a cvstest project" cvstest v_0_0_1 start[/code]

    ¡¡¡¡ËµÃ÷£ºimport ÊÇcvsµÄÃüÁîÖ®Ò»£¬±íʾÏòcvs²Ö¿âÊäÈëÏîÄ¿Îļþ¡£

    ¡¡¡¡-m²ÎÊýºóÃæµÄ×Ö´®ÊÇÃèÊöÎı¾£¬¶ÔÏîÄ¿½øÐÐÃèÊö£¬Èç¹û²»¼Ó -m ²ÎÊý£¬ÄÇôcvs»á×Ô¶¯ÔËÐÐÒ»¸ö±à¼­Æ÷£¨Ò»°ãÊÇvi£¬µ«ÊÇ¿ÉÒÔͨ¹ýÐ޸Ļ·¾³±äÁ¿EDITORÀ´¸Ä³ÉÄãϲ»¶Óõı༭Æ÷£©ÈÃÄãÊäÈëÐÅÏ¢£¬cvstest ÊÇÏîÄ¿Ãû³Æ£¨Êµ¼ÊÉÏÊDzֿâÃû£¬ÔÚCVS·þÎñÆ÷ÉÏ»á´æ´¢ÔÚÒÔÕâ¸öÃû×ÖÃüÃûµÄ²Ö¿âÀ v_0_0_1ÊÇÕâ¸ö·ÖÖ§µÄ×ܱê¼Ç£®Ã»É¶Ó㨻òÔ»²»³£Óã©¡£start ÊÇÿ´Î import ±êʶÎļþµÄÊäÈë²ã´ÎµÄ±ê¼Ç£¬Ã»É¶Óá£ÕâÑùÎÒÃǾÍÔÚÓû§Ö¸¶¨½øÐгõʼ»¯µÄĿ¼/home/cvsrootϽ¨Á¢ÁËÒ»¸öÃû×Ö½ÐcvstestµÄCVSÄ£¿éÁË£¬È»ºó£¬ÎÒÃÇ¿ÉÒÔ°ÑÕâ¸ö²âÊÔÏîÄ¿µÄÎļþɾ³ý£¬ÊÔÑéÈçºÎ´Ó²Ö¿â»ñÈ¡ÎļþÕâ»áÔÚºóÃæµÄ¿Í»§¶ËÎÄÕ½øÐÐ˵Ã÷¡£(×¢£º±¾Ð¡½ÚÖ÷ÒªÒýÓÃ×Ôhttp://linuxaid.com.cnºÎΰƽµÄ¡°CVS·þÎñÆ÷¿ìËÙÖ¸ÄÏ¡±)

    ¡¡¡¡9¡¢´Ócvs±¾µØ·þÎñÆ÷ÉÏcheckoutÏàÓ¦µÄÄ£¿é£º

    ¡¡¡¡a¡¢Èç¹ûÊÇÔÚCVS·þÎñÆ÷ËùÔÚ¼ÆËã»úÉÏ£¬¿ÉÒÔÖ±½Ó²ÉÓÃÈçÏÂÃüÁ

    [code]¡¡¡¡#cvs checkout stw[/code]

    ¡¡¡¡ÕâÑù½«°ÑstwÏîÄ¿Ä£¿écheckoutµ½µ±Ç°Ä¿Â¼Ï¡£

    ¡¡¡¡b¡¢Èç¹ûÊÇÔÚÔ¶³ÌÔËÐÐLinux»òÆäËüUnixϵͳÉÏ£¬ÔÚµÚ7ÖеǼ֮ºóÒ²¿ÉÒÔÓÃÉϱߵÄÃüÁî°ÑÏàÓ¦µÄÏîÄ¿Ä£¿écheckoutµ½µ±Ç°Ä¿Â¼Ï¡£ÁíÍ⣬Èç¹ûÊÇÔÚwindows¶Ë½øÐÐcheckout£¬¿ÉÒÔ²ÉÓÃWinCVS£¬ÄÇô»¹Òª¶ÔWinCVS½øÐÐÆäËüµÄһЩÅäÖã¬ÏÂÒ»²¿·Ö½«¾ßÌå½éÉÜËüµÄÅäÖ÷½·¨¡£