Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
½« Perforce ÅäÖùÜÀíÓë Rational Team Concert 3.0 ¼¯³ÉÆðÀ´
 
×÷Õß eggcalmµÄBLOG£¬»ðÁú¹ûÈí¼þ    ·¢²¼ÓÚ 2014-08-18
  3583  次浏览      28
 

±¾ÎÄ̽ÌÖÁ˽« Perforce Èí¼þÓë IBM? Rational Team Concert? Ï༯³ÉµÄģʽ¡£Ëü°üº¬Á˹ØÓÚ¼¯³ÉµÄÒ»¸ö·¶Àý³ÌÐò¡£

¸ÅÊö

Äú¿ÉÒÔʹÓÃÒ»¸öÌæ´úÐÔµÄÈí¼þÅäÖùÜÀí£¨SCM£©Óë IBM? Rational Team Concert?£¬¶ø²»ÊÇĬÈϵİ汾¿ØÖÆÏµÍ³£¨²Î¼û ²Î¿¼×ÊÁÏ ÒԵõ½¡°Ê¹Óà Rational Team Concert 2.0 ¼¯³ÉÆäËü SCM ϵͳ¡±µÄÁ´½Ó£©¡£±¾ÎÄÑÝʾÁËÔõÑù¸ù¾Ý»ùÓÚ²»Í¬ÓÃÀýµÄÁ½¸ö²»Í¬µÄ¼¯³Éģʽ£¬ÔõÑù½« SCM ϵͳÓë Rational Team Concert ¼¯³ÉÆðÀ´£º

launch-from-rtc

launch-from-p4

¼¯³Éģʽ

launch-from-rtc ģʽµÄ¹¤×÷·½Ê½ÊÇÔÚ¼¼ÊõÐÔÁìµ¼·ÖÅ乤×÷Ïîʱ£¬´´½¨ Perforce ÈÎÎñ£¬È»ºóÔÚ Rational Team Concert Öд´½¨ÈÎÎñÓ빤×÷ÏîÖ®¼äµÄ¹ØÏµ¡£Äú¿ÉÒÔ´´½¨ Perforce ¸ü¸ÄÁÐ±í£¬²¢½«ÆäÓ빤×÷ÏîÄ¿ÁªÏµÆðÀ´¡£Í¨¹ýʹÓÃÕâЩÒѾ­´æÔÚµÄÈÎÎñÓë¸ü¸ÄÁÐ±í£¬¿ª·¢Ô±¿ÉÒÔʹÓà Perforce À´¼ìÈëºÍ¼ì³öÎļþ£¬¶ø²»ÓÃÈ¥¹Ø×¢¹¤×÷Ïî¡£ÔÚÎÄÕµĺóÃæ£¬ÓÐʵʩ¸ÃģʽµÄ³ÌÐò¡£

ͼ 1. launch-from-rtc ģʽ

Ìá½»±ä¸üÁбíʱ£¬launch-from-p4 ģʽͨ¹ý´´½¨ Rational Team Concert Ö®ÖÐ Perforce ±ä¸üÁбíÓ빤×÷ÏîÖ®¼äµÄË«±ß¹ØÏµÀ´·¢»Ó×÷Ó᣸½ÊôÓÚ¸ü¸ÄÁбíºÍ¹¤×÷ÏîµÄ Perforce ÈÎÎñ¿ÉÒÔÏ໥ÁªÏµ¡£ÓµÓÐ Perforce µÄ¿ª·¢Ô±¿ÉÒÔÔÚ¿ª·¢¹ý³ÌÖ®Öиù¾ÝÐèÇó£¬Í¨¹ýÑ¡ÔñÆä ID À´½«ÆäËûµÄ¸ü¸ÄÁбíÓ빤×÷Ï̬µØÁªÏµÆðÀ´¡£ÔÚÃûΪ¡°½« Perforce Èí¼þÓë Rational Team Concert ¼¯³ÉÆðÀ´¡±µÄÎÄÕÂÖУ¬ÃèÊöÁËʵʩµÄ¸ÃÖÖģʽºÍ³ÌÐò¡££¨²Î¼û ²Î¿¼×ÊÁÏ£©¡£

ͼ 2. launch-from-p4 ģʽ

ÕâÁ½ÖÖģʽÏ໥²¹Öú£¬¶øÇÒ²»»á·¢Éú³åÍ»¡£Äú¿ÉÒÔʹÓÃÆäÖеÄÒ»¸öÀ´´¦Àí²»Í¬µÄÓÃÀý¡£ÄúÒ²¿ÉÒÔÑ¡Ôñ£¬ÔÚʹÓà launch-from-rtc ģʽ֮ºó£¬¿ª·¢Ô±¿ÉÒÔʹÓà launch-from-p4 ģʽÀ´Ìí¼Ó¸ü¸ÄÁÐ±í¡£

´´½¨

ÐèÒªµÄÈí¼þ»·¾³

±¾ÎÄʹÓõķ¶ÀýÔÚ Microsoft Windows »·¾³ÏÂÔËÐС£cURL Óë Perl ²¢²»½öÏÞÓÚ Cygwin ÔËÐÐʱϵͳ¡£

1¡¢Perforce ÐèÒªµÄ»·¾³

1.ÃüÁîÐпͻ§¶Ë£¨P4£©

P4 ±ØÐë°²×°µ½Óë Rational Team Concert ÏàͬµÄ»úÆ÷ÉÏ¡£

ÃûΪ p4tester µÄÓû§£¬ÆäÃÜÂëÊÇ p4tester£¬Ê¹Óà P4¡£

2.¿ÉÊӵĿͻ§¶Ë£¨P4V£©¡£

¿ª·¢Ô±±ØÐëʹÓà P4V À´¼ìÈë»òÕß¼ì³öÎļþ¡£

3.·þÎñÆ÷£¨P4D£©

P4D ±ØÐëÔÚ 1666 ¶Ë¿ÚÉÏÔËÐС£

4.ÍøÂç¿Í»§¶Ë£¨P4Web£©

P4Web ¿ÉÒÔ°²×°ÔÚÓë P4D ÏàͬµÄ»úÆ÷Ö®ÉÏ¡£

P4Web ±ØÐëÔڲ鿴ÕßģʽÖÐ -B Ñ¡ÏîÏÂÔËÐУ¬ÒÔÖ§³Ö´ÓÔ¶³Ì»úÆ÷ÉϽøÐзÃÎÊ¡£

¹¤×÷ÏîµÄÁ´½ÓÊÇ http://(the same machine as P4D):8080/xxx

P4Web ¿ÉÒÔ°²×°ÔÚÿһ¸ö¿ª·¢Ô±µÄ»úÆ÷ÉÏ£¬µ«ÊDz»Äܰ²×°µ½ÓÐ P4D µÄ»úÆ÷ÉÏ¡£

P4Web ÔËÐÐÔÚĬÈÏģʽÏ£¬ÒÔÖ§³Öÿһ¸ö¿ª·¢Ô±´Ó±¾µØ·ÃÎÊËü¡£

¹¤×÷ÏîÉϵÄÁ´½ÓÊÇ http://localhost:8080/xxx

P4Web ±ØÐëÔÚ 8080 ¶Ë¿ÚÉÏÔËÐС£

2¡¢Rational Team Concert 3.0 °æ±¾µÄÔËÐÐÒªÇó

1.Eclipse IDE ¿Í»§¶Ë

ÃûΪ tester µÄÓû§£¬ÆäÃÜÂëÊÇ tester£¬Ê¹Óà Eclipse IDE ¿Í»§¶Ë¡£

ÃûΪ TestProject µÄÏîÄ¿ÇøÓò±ØÐëÓÉÓû§´´½¨¡£

2.·þÎñÆ÷

·þÎñÆ÷±ØÐëÔÚ 9443 ¶Ë¿ÚÉÏÔËÐС£

3¡¢Cygwin cURL£¬Perl µÄÔËÐÐÌõ¼þ

cURL Óë Perl ±ØÐë°²×°µ½Óë Rational Team Concert ·þÎñÆ÷ÏàͬµÄ»úÆ÷ÉÏ¡£

ͼ 3. ϵͳÅäÖÃ

°²×° Perl ½Å±¾

1.½« launch-from-rtc.pl Óë P4RTC.pm ¸´ÖƵ½°²×° Rational Team Concert£¨RTC£©·þÎñÆ÷µÄλÖã¬Ò²¾ÍÊÇ C:\cygwin\usr\local\p4rtc-pl¡£

2.±à¼­ÒÔÏµĻ·¾³²ÎÊý£¬ÒÔÆ¥Åä P4RTC.pm ÖеĻ·¾³£º

Perforce£º $P4RTC::p4web£¬$P4RTC::p4d_port£¬$P4RTC::p4user£¬$P4RTC::p4pass£¬$P4RTC::p4user_client
Rational Team Concert£º $P4RTC::rtc_user£¬$P4RTC::rtc_pass£¬$P4RTC::rtc_serv£¬$P4RTC::rtc_path

Ϊ Rational Team Concert °²×°²å¼þ

1.È·¶¨ Rational? Jazz? ·þÎñÆ÷±»¹Ø±Õ¡£

2.½« p4bridge.site ¸´ÖƵ½ C:\ProgramFiles\IBM\JazzTeamServer\server\conf\ccm\sites

3.½« p4bridge.ini ¸´ÖƵ½ C:\ProgramFiles\IBM\JazzTeamServer\server\conf\ccm\provision_profiles

4.½«ÊôÐÔÌí¼Óµ½ C:\ProgramFiles\IBM\JazzTeamServer\server Ö®Ï嵀 server.startup.bat£¨²Î¼ûÇåµ¥ 1£©¡£ÐèÒªµÄÊôÐÔÊÇ p4rtc.runtime ÒÔ¼° p4rtc.program£¬ÔËÐÐÁªÏµ³ÌÐòµÄÔËÐÐʱ·¾¶£¬ÁªÏµ³ÌÐòµÄ·¾¶£¬½«·Ö±ðʹÓõ½Ëü¡£ÊôÐÔ p4rtc.skipword ÊÇ¿ÉÑ¡ÐԵģ¬Èç¹û¹¤×÷Ïî×ܽáÇøÓòÖдÊÓïÒѾ­´æÔڵϰ£¬ÄÇôËüÊÇÓÃÓÚÌø¹ý²Ù×÷µÄ´Ê¡£p4rtc.checkbox ÊôÐÔÊÇ¿ÉÑ¡ÐԵ쬲¢ÇÒÓÃ×÷¸´Ñ¡¿òµÄ±êÇ©£¬ÒÔ¾ö¶¨ÊÇ·ñÔËÐÐÏà¹ØµÄ³ÌÐò¡£

Çåµ¥ 1. ÉèÖÃÊôÐԵķ¶Àý

set JAVA_OPTS=%JAVA_OPTS% -Dp4rtc.runtime="C:\\cygwin\\bin\\perl.exe"
set JAVA_OPTS=%JAVA_OPTS% -Dp4rtc.program="C:\\cygwin\\usr\\local\\
p4rtc-pl\\launch-from-rtc.pl"
set JAVA_OPTS=%JAVA_OPTS% -Dp4rtc.skipword=p4skip
set JAVA_OPTS=%JAVA_OPTS% -Dp4rtc.checkbox=p4link

5.Æô¶¯ Jazz ·þÎñÆ÷¡£

6.±à¼­ save workitem µÄ²Ù×÷ÐÔÐÐΪ£º

1£©´ò¿ªÊôÐÔÇøÓò¡£

2£©µã»÷ Process Configuration > Team Configuration > Operation Behavior > Workitem > Save workitem À´Ñ¡ÔñÒ»¸ö½ÇÉ«¡£

3£©µã»÷ Add¡£

4£©Ñ¡Ôñ Create and link P4 objects in Save£¨P4 Bridge£©£¨²Î¼û ͼ 4£©¡£

5£©µã»÷ OK È»ºóµã»÷ Save¡£

ͼ 4. Ñ¡Ôñ P4 ÇÅ

7.£¨¿ÉÑ¡ÐԵģ©Èç¹ûÄú¸üвå¼þ£¬¶øÇÒ±ØÐëÔٴθ´ÖƵϰ£¬Äú¿ÉÒÔʹÓà Request Server Reset£º

1£©https://hostname:port/ccm/admin?internal#action=com.ibm.team.repository.admin.serverReset

2£©¹Ø±Õ Jazz ·þÎñÆ÷£¬Ö´ÐÐµÚ 2 ²½£¬È»ºóÖØÆô Jazz ·þÎñÆ÷¡£

ÔÚ Rational Team Concert Öж¨Öƹ¤×÷Ïî±à¼­Æ÷£¨¿ÉÑ¡ÐԵģ©

ÔÚÓÐЩÇé¿öÏ£¬µ±ÄúÔÚ Rational Team Concert Öд´½¨¹¤×÷Ïîʱ£¬Óû§ÏëÒª¾ö¶¨ÊÇ·ñ´´½¨ Perforce ¶ÔÏó¡£Ò»¸öÑ¡ÔñÊÇͨ¹ý¶¨Öƹ¤×÷Ïî±à¼­Æ÷À´Ìí¼ÓÒ»¸ö¸´Ñ¡¿ò¡£ÔÚ´´½¨¹¤×÷Ïîʱ£¬Èç¹ûÓû§ÏëÒª´´½¨ºÍÁªÏµ Perforce ¶ÔÏó£¬ÄÇôËûÃÇ¿ÉÒÔÑ¡Öи´Ñ¡¿ò£»»òÕߣ¬¿ÉÒÔÈ¡ÏûËüµÄÑ¡Ôñ£¨Í¼ 5£©¡£

ͼ 5. Ìí¼ÓÒ»¸ö¸´Ñ¡¿ò

ΪÁËÏò¹¤×÷Ïî±à¼­Æ÷Ìí¼ÓÒ»¸ö¸´Ñ¡¿ò£¬Äú±ØÐëÌí¼ÓÊôÐÔ£¬²¢¾ÍÌØ¶¨µÄ²¼¾Ö×÷³ö¾ö²ß¡£

1.ʹÓà Project Area ±à¼­Æ÷À´´ò¿ªÒ»¸öÏîÄ¿ÇøÓò¡£

2.±à¼­ÀàÐͺÍÊôÐÔ£¬ÒÔÏò¹¤×÷Ïî±à¼­ÀàÐͺÍÊôÐÔ£º

1£©Õ¹¿ª Process Configuration > Project Configuration > Configuration Data > Work Items > Types and Attributes¡£

2£©Ñ¡ÔñÒ»¸ö¹¤×÷ÏîÀàÐÍ£¨Í¼ 6£©¡£ÀýÈ磬µã»÷ Defect ÒÔΪȱÏÝÀàÐÍÕ¹¿ª¹¤×÷Ïî±à¼­Æ÷¡£

ͼ 6. Ñ¡ÔñÒ»¸ö¹¤×÷ÏîÀàÐÍ

3.ÔÚ Attributes Ö®Öеã»÷ Add ÒÔÌî³äÒÔϵÄÇøÓò£¬È»ºóµã»÷ OK£¨Í¼ 7£©£º

1£©Ãû×Ö£º p4link

2£©ID£º p4link

3£©ÀàÐÍ£º Boolean

ͼ 7. Ïò¹¤×÷ÏîÀàÐÍÌí¼ÓÒ»¸öÊôÐÔ

4.ÖØ¸´µÚ 2 ²½µ½µÚ 3 ²½ÒÔ½øÒ»²½µØ¶¨Öƹ¤×÷Ïî¡£

5.±à¼­±à¼­Æ÷µÄÍâ¹Û£¬ÒÔ¾ö¶¨Ìí¼ÓÊôÐÔ½«»á³öÏÖλÖõIJ¼¾Ö£º

1£©Õ¹¿ª Process Configuration > Project Configuration > Configuration Data > Work Items > Editor Presentations¡£

2£©Ñ¡ÔñÒ»¸ö¹¤×÷ÏîÀàÐÍ£¨Í¼ 8£©¡£ÀýÈ磬ѡÔñ com.ibm.team.workitem.editor.default ÒÔΪȱÏÝÀàÐÍÕ¹¿ª¹¤×÷Ïî±à¼­Æ÷¡£

3£©µã»÷ Overview Ö®Ï嵀 Details£¬²¢µã»÷ Add Presentation¡£

»ùÓÚÊôÐÔµÄÐÎÏó£º Ñ¡ÖÐ

ÊôÐÔ£º p4link

ÀàÐÍ£º Boolean

±êÇ©£¨¿ÉÑ¡ÐԵģ©£ºp4link

ÃèÊö£¨¿ÉÑ¡ÐԵģ©£º ½«¹¤×÷ÏîÓë p4 ¶ÔÏóÁªÏµÆðÀ´

ID£¨¿ÉÑ¡ÐԵģ©£º p4link

Òþ²ØÔÚ¹¤×÷Á÷³Ì״̬֮ÖУºÕýÔÚÑ¡Ôñ£¬Ðµģ¬Òѽâ¾ö£¬È±Ïݹ¤×÷Á÷³ÌÒÑÈ·ÈÏ

4£©Í¼ 9 ÏÔʾÁËÊôÐÔ p4link λÓÚ Details ´°¸ñ½ÏºóµÄλÖá£

5£©Öظ´µÚ b ²½µ½µÚ d ²½ÒÔ¶¨Öƹ¤×÷ÏîµÄÀàÐÍ¡£

ͼ 8. Ϊ²¼¾ÖÑ¡ÔñÒ»¸ö¹¤×÷ÏîÀàÐÍ

ͼ 9. ÏòÒ»¸ö²¼¾ÖÌí¼ÓÒ»¸öÊôÐÔ

ÓÃÀý

½ÓÏÂÀ´µÄÓÃÀý·¢ÉúÔÚÁ½ÖÖ½Çɫ֮¼ä£º¼¼ÊõÐÔÁìµ¼ºÍ¿ª·¢Ô±¡£

1.¼¼ÊõÐÔÁìµ¼ÔÚ Rational Team Concert Ö®Öд´½¨ÁËÒ»¸ö¹¤×÷Ïî¡£

Ò»¸ö ¿ª¹Ø À´¿ØÖÆÊÇ·ñ´´½¨ Perforce ÈÎÎñºÍ±ä¸üÁÐ±í¡£ÕâÀ¸Ã¿ª¹ØÊÇ×÷Ϊ¸´Ñ¡¿òºÍ¹¤×÷ÏîÖеĹؼü×ÖʵʩµÄ¡£Èç¹û¶¨ÖƵĸ´Ñ¡¿ò´æÔڵϰ£¬ÄÇô¾ö²ß¾ö¶¨»áÈ·Èϸ´Ñ¡¿òµÄÖµ¡£Èç¹û¸´Ñ¡¿ò²»´æÔڵϰ£¬ÄÇô¸ù¾Ý¹¤×÷ÏîÄ¿×ܽáÇøÓòÊÇ·ñÓи´Ñ¡¿ò£¬À´×ö³ö¾ö²ß¡£

Èç¹ûÑ¡Öпª¹ØµÄ»°£¬ÄÇô Perforce ÈÎÎñºÍ¸ü¸ÄÁÐ±í¶¼»áµÃµ½×Ô¶¯´´½¨£¬±£´æ¹ý³ÌÖÐËüÃÇ»áÓ빤×÷ÏîÁªÏµÆðÀ´£¨Í¼ 10£©¡£

Èç¹ûûÓÐÑ¡ÖУ¬ÄÇô Perforce ÈÎÎñºÍ¸ü¸ÄÁÐ±í¶¼²»»áµÃµ½´´½¨¡£

2.T¿ª·¢Ô±»á´Ó Rational Team Concert ÖнÓÊÜй¤×÷ÏîµÄµç×ÓÓʼþ֪ͨ¡£

3.¿ª·¢Ô±ÔÚ Perforce ¸ü¸ÄÁбíÖ®ÖеÄÇøÓòÄÚ¼ì³ö£¬±à¼­£¬²¢¼ìÈë¡£

4.¼¼ÊõÐÔÁìµ¼»á±à¼­¹¤×÷ÏîµÄ״̬£¬²¢´Ó Rational Team Concert ÄÇÀïÊÕµ½×´Ì¬¸ü¸ÄµÄ֪ͨ¡£

×¢Ò⣺

¸ü¸Ä¹¤×÷ÏîµÄ״̬²¢²»»á´´½¨Ò»¸ö Perforce ¸ü¸ÄÁбí»òÕßÈÎÎñ¡£Ö»ÊÇÔÚ´´½¨¹¤×÷Ïîʱ²Å»á´´½¨Ëü¡£

5.¿ª·¢Ô±»áʹÓà Perforce ÈÎÎñ£¬È»ºó¹Ø±Õ Perforce ÈÎÎñ£¬À´Ìá½»Îļþ¡£

6.¼¼ÊõÐÔÁìµ¼»áÈ·ÈÏ Perforce ÈÎÎñ¹Ø±Õ£¬È»ºó¹Ø±Õ¹¤×÷Ïî¡£

ͼ 10. Óë Perforce ÈÎÎñÓë¸ü¸ÄÁбíµÄÁªÏµ

ʵʩ

ΪÁËÔÚ Rational Team Concert Öд´½¨¹¤×÷Ïîʱ×Ô¶¯´´½¨Ò»¸ö Perforce ÈÎÎñºÍ¸ü¸ÄÁÐ±í£¬ÄÇô¹¤×÷ÏîµÄ±£´æ¹ý³Ì±ØÐë±» ÔÝÍ££¬ÒÔÖ´ÐÐ Perforce ÃüÁ´´½¨ Perforce ÈÎÎñºÍ¸ü¸ÄÁÐ±í¡£Í¨¹ýʵʩ com.ibm.team.process.common.advice.runtime.IOperationAdvisor µÄ run ·½·¨£¬¿ÉÒÔÍê³É¸Ã²Ù×÷¡£run ·½·¨¿ÉÄÜÐèÒªÕâЩ²½Öè¡£

1.´´½¨Ò»¸ö Perforce ÈÎÎñºÍ¸ü¸ÄÁÐ±í¡£

2.ÔÚ Perforce ÈÎÎñºÍ¸ü¸ÄÁбíµÄÃèÊöÇøÓòÖ®ÖÐÊäÈ빤×÷ÏîµÄ URL¡£

3.½« Perforce ÈÎÎñºÍ¸ü¸ÄÁбíµÄ URL ÊäÈëµ½ Rational Team Concert Öй¤×÷ÏîµÄÏà¹ØÇøÓòÄÚ¡£

×¢Ò⣺

µÚÈý²¿ÓÐһЩÎÊÌâ¡£¸üй¤×÷ÏîµÄÇøÓòÔÚ run ·½·¨Öв»ÄÜÖ´ÐУ¬ÒòΪ¸üлáµ÷ÓÃÆäËûµÄ±£´æ¹ý³Ì£¬Õ⽫µ¼ÖÂËÀÑ­»·µÄ²úÉú¡£ÎÒÃǽ¨ÒéÄúÖ»ÔÚµÚÈý²½·½·¨´´½¨ºÍÆô¶¯Ò»¸öÐµķ½·¨¡£run ·½·¨Íê³ÉÖ®ºó£¬ÍⲿÐԵĽű¾»á´¦Àíд´½¨Ïß³ÌÄÚµÄÈý¸ö²½Öè¡£

Ϊ Rational Team Concert ʵʩ²å¼þ

Èç¹ûÄúÏëÒª²é¿´ÔõÑùΪ Rational Team Concert ´´½¨²å¼þµÄÍêÕû½éÉÜ£¬Äú¿ÉÒԲ鿴¡°Rational Team Concert - Creating Custom Operation Advisors¡±£¬²Î¼û ²Î¿¼×ÊÁÏ¡£½ÓÏÂÀ´µÄ³ÌÐòÏòÄúչʾÁËÔõÑù´´½¨²å¼þ£¬ÌØÐÔ£¬²¢¸üб¾ÎÄÖÐËùʹÓõ½µÄÍøÕ¾ÏîÄ¿¡£

1.Ϊ Rational Team Concert 3.0 °æ±¾´´½¨ SDK£¨²Î¼û RTCSDK20 Development Environment Setup ÖС°´´½¨ Target Platform¡±£©¡£

1£©ÏÂÔØ Rational Team Concert 3.0 ²¢½âѹ Rational Team Concert SDK¡£

2£©Ñ¡Ôñ Window > Preferences > Plug-in Development > Target Platform > Add£¬²¢µã»÷ Nothing: Start with an empty target definition¡£

3£©È»ºóµã»÷ Next¡£

4£©ÔÚ Name ÇøÓòÖУ¬ÊäÈë RTC-SDK-30£¬²¢ÔÚ Locations ÏîÉϵã»÷ Add¡£

5£©µã»÷ Installation£¬È»ºóµã»÷ Next¡£

6£©ä¯ÀÀ½âѹËõºó Rational Team Concert SDK µÄ¸ùĿ¼£¬µã»÷ Finish£¬È»ºóÔٴεã»÷ Finish¡£

7£©ÔÚ Target Definitions Éϵã»÷ RTC-SDK-30¡£

8£©µã»÷ OK¡£

2.´´½¨²å¼þÏîÄ¿£º

1£©ÏîÄ¿Ãû£º p4bridge

ID£ºp4bridge

°æ±¾£º 1.0.0.qualifier

Ãû×Ö£ºp4bridge

È¡ÏûÑ¡Ôñ Éú³ÉÒ»¸ö¼¤»îÆ÷£¬Ò»¸ö¿ØÖƲå¼þÉúÃüÖÜÆÚµÄ Java Àà ¡£

2£©ÔÚ plugin.xml ÎļþÖÐµÄ Overview ÏîÉÏÑ¡Ôñ This plug-in is a singleton¡£

3£©ÔÚ plugin.xml ÎļþµÄ Dependencies ÏîÉÏÌí¼ÓÒÔÏÂÐèÒªµÄ²å¼þ£º

org.eclipse.core.runtime
com.ibm.team.process.common
com.ibm.team.process.service
com.ibm.team.workitem.common
com.ibm.team.repository.common
com.ibm.team.repository.service
com.ibm.team.workitem.service

4)ÌîÈë plugin.xml ÎļþµÄ Extensions£¨Í¼ 11£¬Í¼ 12£©£º

À©Õ¹µã£º com.ibm.team.process.service.operationAdvisors

ID£ºp4bridge.operationAdvisor

Àࣺp4bridge.P4BridgeCreateAndLinkInSave

Ãû×Ö£º Create and link P4 objects in Save£¨P4 Bridge£©

operationID£º com.ibm.team.workitem.operation.workItemSave

ÓÒ»÷ operationAdvisor£¬²¢ÊäÈë componentId£¬implementationClass£¬²¢Ñ¡Ôñ New > extensionService¡£

componentId£ºp4bridge.extensionService

implementationClass£ºp4bridge.P4BridgeCreateAndLinkInSave

ÓÒ»÷ extensionService£¬²¢Çл»ÖÁplugin.xml Ï²¢Ìí¼Ó com.ibm.team.workitem.service.IWorkItemServer ×÷Ϊ requiredService£¬À´Ñ¡Ôñ New > prerequisites£¨Çåµ¥ 2£©¡£

ÔÚ New Java Class ¶Ô»°¿ò´°¿ÚÖ®ÖУ¬µã»÷ class Á´½ÓÒÔ´´½¨ÊµÊ© com.ibm.team.process.common.advice.runtime.IOperationAdvisor µÄÀ࣬Ȼºóʵʩ P4BridgeCreateAndLinkInSave Àࣨ²Î¼û Çåµ¥ 3£©¡£

±£´æ¡£

3.´´½¨ Feature ÏîÄ¿£º

1)ÏîÄ¿Ãû£ºp4bridge.feature

2)ÌØÐÔ ID£º p4bridge.feature

3)ÌØÐÔÃû£º p4bridge feature

4)ÌØÐÔ°æ±¾£º1.0.0.qualifier

5)ÔÚ New Feature ¶Ô»°¿ò´°¿ÚµÄ Referenced Plug-ins ÒÔ¼° Fragment ²¿·ÖÖ®ÖУ¬Ñ¡Ôñ p4bridge¡£

4.´´½¨ Update Site ÏîÄ¿£º

1)ÏîÄ¿Ãû£ºp4bridge.site

2)ÔÚ site.xml ÎļþµÄÍøÕ¾µØÍ¼ÏîÉϵã»÷ Add Feature£¬²¢Ñ¡Ôñ p4bridge.feature¡£

5.¹¹½¨£¬µ¼³ö£¬²¢´´½¨£º

1£©ÔÚ p4bridge.site ÏîÄ¿ÖÐÓÒ»÷ site.xml Îļþ£¬Ñ¡Ôñ PDE Tools > Build Site¡£

2£©ÓÒ»÷ p4bridge.site ÏîÄ¿À´Ñ¡Ôñ Export > File System¡£

3£©ÔÚĿ¼ÖÐÊäÈëÎļþ·¾¶¡£µã»÷ Finish¡£

4£©°²×°²å¼þ£¨²Î¼û´´½¨²¿·ÖÖÐµÄ Îª Rational Team Concert °²×°²å¼þ£©¡£

6.Èç¹ûд´½¨µÄ²å¼þûÓгöÏÖÔÚ½ø³ÌÅäÖÃÖÐʱ£¬ÄÇô½øÐйÊÕÏÅųý²Ù×÷£º

1£©È·ÈÏ p4bridge ÏîÄ¿ÖÐ plugin.xml ÎļþµÄ Bulid ÏîÉÏ£¬Ñ¡ÔñÁË plugin.xml¡£

2£©Ê¹Óà Request Server Reset£¬²¢ÖØÆô Jazz ·þÎñÆ÷ÒÔÇå³ý»º´æ¡£

3£©ÖØÆô Eclipse ¿Í»§¶ËÒÔÇå³ý»º´æ¡£

Çåµ¥ 2. ǰÌáÌõ¼þÖ®ÏÂÌí¼ÓÐèÒªµÄ·þÎñ

...
<extensionService
componentId="p4bridge.extensionService"
implementationClass="p4bridge.P4BridgeCreateAndLinkInSave">
<prerequisites> <requiredService
interface="com.ibm.team.workitem.service.IWorkItemServer" />
</prerequisites>
</extensionService>
...

ͼ 11. ¶¨Òå operationAdvisor

ͼ 12. operationAdvisor µÄÏàÐÅÐÅÏ¢

Çåµ¥ 3 ÊÇ com.ibm.team.process.common.advice.runtime.IOperationAdvisor ½çÃæµÄ run ·½·¨¡£ÓÐÈýµãÖµµÃ×¢Ò⣺

Ê×ÏÈ£¬¸Ã·½·¨Ö»ÔÚ´´½¨Ò»¸öÐµĹ¤×÷ÏîʱÆð×÷Óã¬ÕâÑù getOldState ·½·¨·µ»Ø null ֵʱ£¬·½·¨²Å»áµÃµ½Ö´ÐС£

µÚ¶þ£¬¸ù¾Ý¹¤×÷Ïî±à¼­Æ÷ÊÇ·ñÓж¨ÖƵĸ´Ñ¡¿ò£¬»òÕß¹¤×÷ÏîµÄ×ܽáÇøÓòÖÐÊÇ·ñÓйؼü×Ö£¬¾ö¶¨ÊÇ·ñ½øÐÐÌø¹ý²Ù×÷¡£

µÚÈý£¬Ò»¸öÐµķ½·¨£¬thRun£¬µ÷ÓÃÒ»¸öÍⲿÐԵĽű¾À´´¦Àí run ·½·¨Íê³ÉÖ®ºó Perforce ÈÎÎñºÍ¸ü¸ÄÁбíµÄ´´½¨ÓÚÁ´½ÓÎÊÌâ¡£

Çåµ¥ 3. P4BridgeCreateAndLinkInSave ÀàÖеÄÔËÐз½·¨ÊµÊ© IOperationAdvisor ½çÃæ

private int workitem_id;
...
public void run(AdvisableOperation operation,
IProcessConfigurationElement advisorConfiguration,
IAdvisorInfoCollector collector, IProgressMonitor monitor)
throws TeamRepositoryException {
...
Object op_data = operation.getOperationData();
if (op_data instanceof ISaveParameter) {
IAuditable new_state = ((ISaveParameter) op_data).getNewState();
IAuditable old_state = ((ISaveParameter) op_data).getOldState();
/*
* The 1st point.
* a linking program can be executed only during the creation of work items.
*/
if (old_state == null && new_state instanceof IWorkItem) {
/*
* do these.
* - check the existence of the customized check box.
* - get a boolean value of the check box if it exists.
*/
boolean doP4Link = false;
IWorkItem workItem = (IWorkItem) new_state;
IWorkItemServer wiService = getService(IWorkItemServer.class);
List<IAttributeHandle> attrs = workItem.getCustomAttributes();
boolean doesP4RtcCheckboxExist = false;
if(attrs != null){
for (IAttributeHandle attrHandle : attrs) {
IAttribute attribute =
wiService.getAuditableCommon().resolveAuditable(attrHandle,
IAttribute.FULL_PROFILE, monitor);
if (attribute.getDisplayName().equals(p4rtc_checkbox)) {
// the customized checkbox exists.
doesP4RtcCheckboxExist = true;
Object value = workItem.getValue(attribute);
if( value instanceof Boolean){
// get the value of the checkbox.
doP4Link = (Boolean)value;
}
}
}
}

// get summary text for skipping decision by key word
String summary = workItem.getHTMLSummary().getPlainText();

/*
* The 2nd point.
* a linking program is decided to be executed in either of these two conditions.
* - checkbox exists and the value is true
* - the checkbox does not exist and a key word does not exist in summary text
*/
if((doesP4RtcCheckboxExist && doP4Link)
|| (doesP4RtcCheckboxExist == false && summary.contains(p4rtc_skipword) == false)){
try{
workitem_id = workItem.getId();
Runnable th = new Runnable(){
public void run(){
try{
ProcessBuilder pb = new ProcessBuilder(p4rtc_runtime_path,
p4rtc_program_path, "" + workitem_id);
pb.redirectErrorStream(true);
// The 3rd point. a linking program is executed outside of the plug-in.
Process ps = pb.start();
getStdout(ps);
}catch(Exception e){
e.printStackTrace();
}
}
};
Thread thRun = new Thread(th);
thRun.start();
}catch(Exception e){
e.printStackTrace();
}
}else{
//skip p4 link
}
}
}
}
...

ʵʩ Perl ½Å±¾

¶ÔÓÚ±¾ÎÄ£¬ÎÒÃÇ¿ÉÒÔ°´ÕÕÏÂÃæµÄ²½ÖèÔÚ Perl ÖÐʵʩÍⲿÐԵĽű¾£º

1.µÇ¼µ½ Perforce ·þÎñÆ÷¡£

2.´´½¨Ò»¸ö Perforce ÈÎÎñ£º

1)½«Ç°×º job_rtc ¼Óµ½¹¤×÷ÏîµÄ ID Ç°Ãæ¡£

2)½«¹¤×÷ÏîµÄ URL ¼Óµ½ÃèÊöÇøÓòÄÚ¡£

3.£¨¿ÉÑ¡ÐԵģ©´´½¨Ò»¸ö Perforce ±ä¸üÁÐ±í¡£

1)½« Perforce ÈÎÎñµÄÃû×ÖÊäÈëµ½ Jobs ÇøÓòÄÚ¡£

2)½«¹¤×÷ÏîÄ¿µÄ URL ÊäÈëµ½ Description ÇøÓòÄÚ¡£

4.µÇ¼µ½ Rational Team Concert ·þÎñÆ÷¡£

5.È·¶¨¹¤×÷ÏîÒѾ­±£´æÔÚ Rational Team Concert Ö®ÖС£

6.¸üй¤×÷Ï

1)½« Perforce ÈÎÎñµÄ URL ÊäÈëµ½Ïà¹ØµÄÁ´½ÓÇøÓò¡£

2)£¨¿ÉÑ¡ÐԵ쩽« Perforce ±ä¸üÁбíµÄ URL ÊäÈëµ½Ïà¹ØÁ´½ÓÇøÓò¡£

3)£¨¿ÉÑ¡ÐԵ쩽«ÆäËûµÄÐÅÏ¢ÊäÈëµ½ÌÖÂÛÇøÓòÄÚ¡£

×ܽá

±¾ÎÄÃèÊöÁËͨ¹ý×ñÑ­ launch-from-rtc ģʽ£¬½« Perforce Èí¼þÓë Rational Team Concert ¼¯³ÉÆðÀ´¡£ËüÏÔʾÁË×÷Ϊ·¶ÀýµÄÔ´´úÂëºÍ½Å±¾¡£ÏÂÒ»²½£¬Perforce ÖÐÈÎÎñµÄ״̬ÒÔ¼° Rational Team Concert Öй¤×÷ÏîµÄ״̬¿ÉÒԵõ½Í¬²½»¯£¬ÕâÑùµ±ÈÎÎñ¹Ø±Õʱ£¬¹¤×÷ÏîµÄ״̬Ҳ»áµÃµ½×Ô¶¯¹Ø±Õ£¬·´Ö®ÒàÈ»¡£

   
3583 ´Îä¯ÀÀ       28
Ïà¹ØÎÄÕÂ

ÿÈÕ¹¹½¨½â¾ö·½°¸
ÈçºÎÖÆ¶¨ÓÐЧµÄÅäÖùÜÀíÁ÷³Ì
ÅäÖùÜÀíÖ÷Òª»î¶¯¼°ÊµÏÖ·½·¨
¹¹½¨¹ÜÀíÈëÃÅ
Ïà¹ØÎĵµ

ÅäÖùÜÀíÁ÷³Ì
ÅäÖùÜÀí°×ƤÊé
CM09_CÅäÖùÜÀí±ê×¼
ʹÓÃSVN½øÐа汾¿ØÖÆ
Ïà¹Ø¿Î³Ì

ÅäÖùÜÀíʵ¼ù
ÅäÖùÜÀí·½·¨¡¢¹¤¾ßÓëÓ¦ÓÃ
¶à²ã´Î¼¯³ÉÅäÖùÜÀí
²úÆ··¢²¼¹ÜÀí
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

Èí¼þÅäÖùÜÀíµÄÎÊÌ⡢ĿµÄ
Èí¼þÅäÖùÜÀí¹æ·¶
CQWeb 7.1ÐÔÄܲâÊÔÓëµ÷ÓÅÖ¸ÄÏ
ΪʲôÐèҪʹÓÃClearCase
ClearCaseÓëRTCµÄ¼¯³É
ÀûÓÃClearQuest ½øÐвâÊÔ¹ÜÀí


²úÆ··¢²¼¹ÜÀí
ÅäÖùÜÀí·½·¨¡¢Êµ¼ù¡¢¹¤¾ß
¶à²ã´Î¼¯³ÉÅäÖùÜÀí
ʹÓÃCCÓëCQ½øÐÐÏîĿʵ¼ù
CVSÓëÅäÖùÜÀí
Subversion¹ÜÀíÔ±


ÅäÖùÜÀíʵ¼ù£¨´Ó×éÖ¯¼¶µ½ÏîÄ¿¼¶£©
ͨºÅÔº ÅäÖùÜÀí¹æ·¶ÓëÓ¦ÓÃ
ÅäÖùÜÀíÈÕ¹¹½¨¼°³ÖÐø¼¯³É
µ¤·ð˹ ClearCaseÓëÅäÖùÜÀí
ÖйúÒÆ¶¯ Èí¼þÅäÖùÜÀí
ÖйúÒøÐÐ Èí¼þÅäÖùÜÀí
Ìì½ò»ªÒíÀ¶Ìì¿Æ¼¼ ÅäÖùÜÀíÓëPvcs