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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
Àí½â XCode ÖÐµÄ Git °æ±¾¿ØÖÆ£¨Ò»£©
 
×÷Õß kangearµÄ²©¿Í£¬»ðÁú¹ûÈí¼þ    ·¢²¼ÓÚ 2014-07-30
  3853  次浏览      27
 

ÔÚÓ¦ÓóÌÐò¿ª·¢¹ý³ÌÖУ¬Ò»¸öÏ൱ÏÔÖøµÄ²¿·ÖÊÇ¿ª·¢ÈËÔ±¹ÜÀí´úÂë±ä¸üµÄ·½Ê½¡£ÕâЩÊDZØÐë°üº¬µÄ¹¦ÄÜ£¬´æ´¢ºÍ´¦Àí¹¤×÷´úÂë°æ±¾ÔÚ²»Í¬½×¶ÎÎȶ¨½×¶ÎµÄ¸±±¾£¬²¢Äܹ»»Ö¸´´úÂëµ±´æÔÚȱÏÝ»òÕß²úÉúÎÊÌâµÄʱºò¡£¸üÓÐÉõÕߣ¬µ±¶à¸ö³ÌÐòÔ±¹¤×÷ÔÚͬһ¸öÏîĿʱ£¬¸ú×ÙËùÓеıä¸üÊÇÒ»¸öµ¥ÏòµÄ·¾¶¡£ÐÒÔ˵ÄÊÇ£¬¿ª·¢ÈËÔ±²»±ØÈ¥·¢Ã÷Ò»ÖÖ·½·¨À´×öÕâЩÊÂÇ飬ÓÐÒ»¸öÌØ±ðµÄÈí¼þ½â¾ö·½°¸£¬½Ð×ö°æ±¾¿ØÖÆÏµÍ³£¨Version Control Systems£©

°æ±¾¿ØÖÆÏµÍ³»òÕß½Ð×öÐÞ¶©¿ØÖÆÏµÍ³£¬Êµ¼ÊÉÏÊÇÒ»ÖÖÄܹ»Ò»Ö±¼àÊÓ´úÂëÎļþµÄ±ä¸ü²¢´æ´¢ËûÃÇΪÁ˽«À´ÒýÓõĻúÖÆ£¨Èí¼þ£©¡£³ýÁËÕâЩ֮Í⣬°æ±¾¿ØÖÆÏµÍ³Ò²±£´æÁ˶îÍâµÄ±ØÒªÊý¾Ý£¬ÀýÈçÄĸö¿ª·¢ÈËÔ±×öÁ˱ä¸ü£¬±ä¸ü·¢ÉúÔÚʲôʱºò£¬Êµ¼ÊÉÏÐÞ¶©ÁËʲô£¬ÆäËûÀàÐ͵ÄÀúÊ·²»½ö½öÊÇÊý¾Ý¡£¶øÇÒ£¬°æ±¾¿ØÖÆÏµÍ³ÌṩÁ˱ȽϴúÂ벻ͬ°æ±¾µÄ¹¦ÄÜ£¬Èç¹ûÐèÒªµÄ»°£¬¿ÉÒÔ»Ö¸´Ìض¨Îļþ»òÕßÕû¸öÏîÄ¿µ½ÒÔǰµÄ°æ±¾£¬²¢×·²é¶ñÒâµÄ´úÂë×îÖÕʵÏÖÎÞȱÏݲúÆ·¡£

ʹÓð汾¿ØÖÆÏµÍ³£¬¿ª·¢ÈËÔ±¿ÉÒÔ¹¤×÷ÔÚÏîÄ¿µÄ²»Í¬Â·¾¶ÉÏ£¬Í¨³£½Ð×ö·ÖÖ§£¨branch£©£¬µ±ËûÃǵĴúÂëÍê³Éʱ£¬ËùÓеĴúÂ뽫ºÏ²¢µ½Ò»ÆðÒԱ㹹½¨Ó¦ÓóÌÐòµÄ×îÖÕ·¢²¼°æ±¾¡£Õâ¸ö¹ý³Ì½Ð×öºÏ²¢´úÂ루merging£©£¬Ëü°üº¬Á˰汾¿ØÖÆÏµÍ³µÄÒ»¸öÌØÊâÌØÐÔ¡£Êµ¼ÊÉÏ£¬ÔÚ¿ª·¢ÍŶӺÍÈí¼þ¹«Ë¾ÖдúÂëµÄ°æ±¾¿ØÖÆÊÇÒ»¸öÇ¿ÖÆÐԵŤ×÷£¬ÍŶÓÖеÄÿ¸öÈ˸ºÔðÏîÄ¿µÄÒ»²¿·Ö£¬×îºóËùÓеĴúÂë±»¼¯Öе½Ò»Æð·ÅÖÃÔÚÒ»¸öµØ·½¡£

¶Ô¸öÈË¿ª·¢ÕßÀ´ËµÊ¹Óð汾¿ØÖÆÏµÍ³²»ÊDZØÒªµÄ£¬µ«ÊÇÈÔÈ»ÊÇÇ¿ÁÒÍÆ¼öµÄ¡£Ò»µ©Óöµ½ÑÏÖØµÄÎÊÌâ»òÕß˵ÒÔ´úÂë¶¼ÂÒÌ×Á˵Äʱºò£¬Ê¹Óð汾¿ØÖÆÏµÍ³½«¸üÈÝÒ××·²éȱÏÝ»òÕ߻ָ´´úÂëµ½Îȶ¨°æ±¾ºÍ´úÂëµÄ¹¤×÷°æ±¾¡£ÊÂʵÉÏ£¬Ðí¶àµÄ¸öÈ˳ÌÐòÔ±£¬ÌرðÊÇÐÂÈË£¬¸ù±¾²»Ê¹Óð汾¿ØÖÆÏµÍ³£¬µ±ËûÃÇÔö¼Óй¦ÄÜ»òÕßÊÇÐ޸ĴúÂëµÄʱºò£¬Í¨³£ÊÖ¶¯¸´ÖÆÏîÄ¿µÄ¸±±¾¡£ÕâÊÇÒ»¸ö·Ç³£²»ºÃµÄϰ¹ß£¬Ô´Âë¿ØÖÆÄܸüºÃ²¢ÇÒ¸üÓÐЧÂʵÄÍê³ÉÕâЩ¹¤×÷£¬Í¬Ê±ÌṩÁËÇ°ÃæÃèÊöµÄ¶îÍ⹦ÄÜ¡£

×÷Ϊ×î³öÃûµÄ°æ±¾¿ØÖÆÏµÍ³Ö®Ò»£¬gitÓÉLinux´´½¨Õß Linus Torvalds¿ª·¢¡£GitÔÚÐéÄâĿ¼£¨²Ö¿â£©ÖÐ×éÖ¯Ò»ÇУ¬Êµ¼ÊÉÏ£¬Èκΰ汾µÄ¸ú×Ù¶¼¿ÉÒÔÊÊÓÃÓÚËûÃÇ¡£Ëü¼È¿ÉÒÔͨ¹ýÃüÁîÐÐʹÓã¬Ò²¿ÉÒÔͨ¹ý×ÀÃæÓ¦ÓóÌÐò¡£Èç¹ûgit¶ÔÄãÀ´ËµºÜİÉú£¬ÄÇôÎÒ½¨ÒéÄãÔÚÍøÂçÉÏÔĶÁһЩ¹ØÓÚgitµÄÎÄÕ£¬¶ø½øÒ»²½ÌÖÂÛgit³¬³öÁ˱¾½Ì³ÌµÄ·¶Î§¡£

×Ô´ÓXcodeµÄµÚÎå°æ±¾Æð£¬¾Í¼¯³ÉÁËgitµÄ·á¸»¹¦ÄÜ£¬°üÀ¨¸÷ÖÖÑ¡Ïî²Ëµ¥µÄ°´Å¥ºÍ¹ÜÀíÔ´´úÂëµÄ×Ӳ˵¥¡£ÕýÏñÄãÉÔºó¿´µ½µÄ£¬Ê¹Óð汾¿ØÖÆgitÊǷdz£ÈÝÒ׺ͿìËٵģ¬ÔÚÄã¿´Íê±¾½Ì³ÌÖ®ºó£¬Ã»ÓÐÀíÓɲ»Ê¹ÓÃËü¡£

×Ü½á¶øÑÔÖ®£¬ÄãÒѾ­Àí½âÁËÎÒÃǵÄÈÎÎñÊÇѧϰÔõÑùÔÚXcodeÖÐʹÓð汾¿ØÖÆgit£¬ÕâÒ»Çн«Í¨¹ýÁ˽âXcodeÌṩµÄÿ¸öÏà¹ØÌØÐÔÀ´Íê³É¡£Èç¹ûÄã²»ÊìϤËùÓеĶ«Î÷£¬»òÕßÔÚÎÒÃÇ¿ªÊ¼Ö®Ç°ÄãÐèÒª»ñÈ¡¸ü¶àµÄ֪ʶ£¬ ÇëÔÚÍøÂçÉÏËÑË÷Ïà¹ØÐÅÏ¢¡£ÎÒ²»µÃ²»Ëµ£¬ÔÚ±¾½Ì³ÌÖÐÎÒ¼ÙÉèÄã¹ØÓÚ°æ±¾¿ØÖÆÏµÍ³ÓµÓÐ×î»ù±¾µÄ֪ʶ£¬±ÈÈçgitÊÇʲô£¬Òò´ËÎÒÃÇÒª°ÑËüÊÓΪÀíËùµ±È»µÄÊÂÇ飬¶ø¹Ø×¢XcodeÔõô¹ÜÀíÕâÒ»ÇС£

GitʾÀýÑÝʾ

ÓëÆäËû½Ì³ÌµÄÑÝʾ³ÌÐòÏà·´£¬±¾ÎÄÖÐÎÒÃDz»»áʵÏÖÒ»¸öÓ¦ÓÃȥչʾiOS SDKµÄ¾ßÌåÌØÐÔ£¬Ò²²»»áÓÐÒ»¸ö×îÖյĿª·¢Ñù±¾¡£Êµ¼ÊÉÏÎÒÃÇËù×öµÄ¾ÍÊÇÈ¥´´½¨Ò»¸öʾÀýÏîÄ¿£¬½ö½öÔÚ¼¸¸öµãÉÏÌí¼Ó¼¸ÐдúÂ룬ÎÒÃǽ«Ê¹ÓÃËü×÷Ϊһ¸ö¹¤¾ßÈ¥²âÊÔXcodeÌṩµÄËùÓÐÔ´´úÂë¿ØÖÆ¹ÜÀíÑ¡Ïî¡£»»¾ä»°Ëµ£¬ÎÒÃÇÖØµãÌÖÂÛµÄÊÇIDE£¬¶ø²»ÊÇiOS¡£

³ý´ËÖ®Í⣬ÕâÒ»´Î²»»áÓпɹ©ÏÂÔØµÄÀý³ÌÁË¡£È¡¶ø´úÖ®µÄÊÇ£¬ÎÒÑûÇëÄãÒ»ÆðÀ´Ò»²½²½ÊµÏÖÕâ¸ö demo£¬²¢ÇÒÔÚÐèҪд´úÂëµÄµØ·½ÊÖ¶¯Ìí¼Ó´úÂ루±ðµ£ÐÄ£¬²»»áºÜ¶à£©¡£ÕâÑù¸úÏÂÀ´ÊÇÓбØÒªµÄ£¬ÒòΪÎÒÃǽ«»áÖØ¸´½øÐжàÖÖÓë°æ±¾¿ØÖÆÓйصIJÙ×÷£¬²¢ÇÒÎÒÃDZØÐ뼴ʱ¿´µ½½á¹û¡£Èç¹ûÎÒÖ»ÊÇÌṩһ¸ö²Ù×÷ÒѾ­Íê³ÉµÄÀý³Ì£¬¾Í²»¿ÉÄÜÓÐÕâÑùµÄЧ¹ûÁË£¬ÒòΪÕâÑùÏÂÀ´Äã×Ô¼ºµÄÁ·Ï°²¿·Ö½üºõÓÚÁã¡£

ÄÇô£¬ÈÃÎÒÃÇ¿ªÊ¼°É£¡ÎÒÃÇÓà Xcode À´½ü¾àÀëµØ¿´Ò»¿´°æ±¾¿ØÖÆÏµÍ³µÄ¾«»ªËùÔÚ¡£

´´½¨ Git ²Ö¿â

ÿ´ÎÔÚ Xcode Öд´½¨ÐÂÏîÄ¿£¬¶¼»áÈÿª·¢ÕßÑ¡ÔñÊÇ·ñÒªÌí¼ÓÒ»¸ö±¾µØ git repository¡£Ð½¨Ò»¸ö project Éæ¼°·ÖΪ3²½µÄÒýµ¼¹ý³Ì£¬ÆäÖÐÔÚµÚ3²½Ò²¾ÍÊÇ×îºóÒ»²½ÖУ¬Xcode ÌṩÁËÒ»¸ö¹´Ñ¡¿òºÍÏàÓ¦µÄ˵Ã÷£¬Èç¹û¹´Ñ¡ÁË£¬Ò»¸ö git repository ¾Í»áÌí¼Óµ½±£´æ project µÄĿ¼ÖС£Õâ¸öÑ¡ÏîºÜÈÝÒ×±»ºöÂÔ£¬»òÕß±»µ±×öÒ»¸ö Xcode µÄûÓÃÌØÐÔ£¬ÕâÖÖʾ­³£·¢Éú£¬ÓÈÆäÊǶÔÓÚ´ÓÀ´Ã»Óùý°æ±¾¿ØÖÆºÍ git µÄ¿ª·¢Õߣ¬»òÕßÐÂÊÖ³ÌÐòÔ±¡£

¾ßÌåϸ½ÚÈçÏ£¬Æô¶¯Xcode²¢´´½¨Ò»¸öÐÂÏîÄ¿¡£Ê×ÏÈ£¬Ñ¡Ôñ¡°µ¥ÊÓͼӦÓóÌÐò(Single View Application)¡±×÷ΪӦÓóÌÐòµÄÄ£°å£¬Í¬Ê±ÔÚiOSÑ¡Ï·Ö£¬Ñ¡Ôñ¡°Ó¦ÓóÌÐò(Application)¡±Ïî¡£

µã»÷¡°ÏÂÒ»²½(Next)¡±°´Å¥µ½µÚ¶þ²½£¬É趨¡°²úÆ·Ãû(Product Name)¡±×Ö¶ÎΪ¡°GitDemo¡±£¬Í¬Ê±È·±£ÔÚ¡°É豸(Devices)¡±ÏÂÀ­²Ëµ¥ÖÐÑ¡Ôñ¡°iPhone¡±¡£ÔÚÕâÀï²»ÐèÒªiPad»òÕ߯ÕͨӦÓá£

Ôٴεã»÷ÏÂÒ»²½°´Å¥£¬½øÈë×îºóÒ»²½¡£ÔÚ´Ë£¬Ê×ÏÈÑ¡Ôñ±£´æÏîÄ¿µÄĿ¼¡£È»ºóÑ¡Öд°¿ÚµÄµ×²¿µÄµ¥Ñ¡¿ò£¬²¢Ñ¡ÖÐÔÚ¡°My Mac¡±ÉÏ´´½¨git²Ö¿â¡£

ĬÈÏÇé¿öÏ£¬Õâ¸ö¹´Ñ¡¿ò×ÜÊDZ»Ñ¡Öеģ¬È»ºóÿ¸ö project ¶¼»á´´½¨Ò»¸ö git repo¡£Èç¹ûÄãµÄÏîÄ¿²»ÏëÓà git ºÍ°æ±¾¿ØÖÆ£¬Ö»ÐèÈ¡ÏûÑ¡ÖУ¬µ«ÎÒ²»½¨ÒéÕâÑù×ö¡£×ÜÖ®£¬±¾½Ì³ÌÖÐÎÒÃÇÏ£ÍûÆôÓÃgit£¬Òò´ËÈ·±£ÄãÑ¡ÖÐÁ˹´Ñ¡¿ò¡£×îºó£¬µã»÷ Create °´Å¥¡£

µÈ´ý project ´´½¨Íê³É°É£¬È»ºó´ò¿ªÒ»¸ö finder ´°¿Ú£¬À´µ½ÎÒÃDZ£´æ project µÄĿ¼Ï¡£ÔÚÕâÀÕÒµ½ .git ×ÓĿ¼£¬ÕâÊÇ Xcode ×Ô¶¯´´½¨µÄĿ¼£¬ÓÃÀ´´æ´¢ git repository Ïà¹ØµÄÊý¾Ý¡£

Èç¹ûÄã¿´²»µ½ .git Ŀ¼£¬Äã±ØÐë°ÑµçÄÔÉϵÄÒþ²ØÎļþ¸ÄΪ¿É¼û¡£Ê×ÏÈ£¬´ò¿ªTerminal(ÖÕ¶Ë) ´°¿Ú£¬È»ºóÊäÈëÒÔÏÂÃüÁ

¶ÔÓÚ OS X Mavericks 10.9:

defaults write com.apple.finder AppleShowAllFiles  TRUE

¶ÔÓÚ´ËǰµÄ OS X °æ±¾:

defaults write com.apple.Finder AppleShowAllFiles TRUE

È»ºó£¬Ö»ÐèÖØÆô Finder Ó¦Óã¬ËùÒÔÔÙÊäÈëÒ»ÌõÃüÁ

killall Finder

Òò´Ë£¬ÈçÄãËù¼û£¬Õâ¸ö app µÄ±¾µØ git repository ʵ¼Ê¾Í±£´æÔÚÕâÀï¡£ÏàÓ¦µØ£¬Äã´´½¨µÄÈκÎÐÂÓ¦Óö¼»áËæÖ®´øÀ´Ò»¸ö .git ×ÓĿ¼£¬Ö»ÒªÄã±£³ÖÏàÓ¦µÄÑ¡ÏîÊǹ´Ñ¡µÄ¡£

ÏÔÈ»£¬Óà Xcode À´Îª project Ìí¼Ó git repository ÊDz»·Ñ´µ»ÒÖ®Á¦µÄ¡£È»¶ø£¬Èç¹ûÄãÔÚ´´½¨ project ʱûÓÐÌí¼Ó git repository£¬»òÕßÏëÒªÉÔºóÔÙÌí¼Ó£¬Ôõô°ìÄØ£¿ºÃÏûÏ¢ÊÇ£¬ÄãËæÊ±¶¼¿ÉÒÔΪ project Ìí¼Ó repository£¬µ«ÊDz»Óà Xcode ÁË¡£¾¡¹ÜÕâÑùµÄÇé¿öºÜÉÙ¼û£¬ÎÒ»¹ÊÇÀ´½²½âһϡ£

×¢Ò⣬Èç¹ûÄã²»Ïë¿´µÄ»°£¬¿ÉÒÔ¾¡¹ÜÌø¹ý±¾½Ì³ÌµÄÏÂÒ»½Ú¡£µ«ÎÒ½¨Ò黹ÊǶÁÏÂÈ¥£¬ÒòΪ½ô½Ó×ÅÔÙÏÂÒ»½ÚµÄÄÚÈÝ»á·Ç³£ÖØÒª¡£

ÔÚ¿ªÊ¼½²Ö®Ç°£¬ÄãÊ×ÏÈÐèÒªÔÚ Xcode ÀïÏÂÔØ Command Line Tools £¬ÒòΪÎÒÃǽÓÏÂÀ´ÒªÓà Terminal £¬ÐèҪһЩ¹¤¾ß¡£Èç¹ûÄãÒѾ­ÏÂÔØÁËÕâ¸ö°ü£¬¾Í½øÐÐÏÂÒ»²½¡£Èç¹ûûÓУ¬Òª°²×° command line tools£¬µã»÷XcodeÀïµÄ Xcode > Preferences¡­ ²Ëµ¥£¬È»ºóÑ¡Ôñ Downloads Ò»Ïî¡£ÔÚ´°¿ÚµÄÉϲ¿£¬Components Ò»À¸Ï£¬µã»÷ Command Line Tools ÓҲ໭×ÅÏòϼýÍ·µÄ°´Å¥¡£Ò»µ©ÏÂÔØ½áÊø£¬ÏÂÔØ°´Å¥»á±ä³É¶Ô¹´·ûºÅ¡£

È»ºó£¬ÎªÁËÕâ¸öÀý×ÓÔÙ´´½¨Ò»¸ö Xcode project£¬ÎÒÃÇÒ»ÇÐÍê³ÉÖ®ºóÔÙ°ÑËüɾ³ý¡£ÕâÒ»´ÎÈ·±£ÒªÈ¡Ïû¹´Ñ¡ Create git repository Ñ¡Ïî¡£ÔÚÕâ¸öÀý×ÓÀÎÒÃDz»ÐèÒª Xcode À´ÎªÎÒÃÇ×¼±¸ repository ÁË¡£°ÑÕâ¸öÏîÄ¿ÃüÃûΪ NoGitExample£¬²¢ÇÒ±£´æÔÚ×ÀÃæÉÏ£¬ÕâÑù¾ÍÄÜÖ±½ÓʹÓÃÎÒ½ÓÏÂÀ´µÄÌṩµÄÖ¸ÁîÁË¡£

Ò»ÇоÍÐ÷£¬´ò¿ªÒ»¸ö Terminal ´°¿Ú£¨Èç¹û֮ǰÒѾ­Óдò¿ªµÄ´°¿Ú£¬È·¶¨ÒªÏȹرÕÔÙÖØÆô£¬ÕâÑù²ÅÄÜÓ¦Óð²×° command line tools ʱ×ö³öµÄ¸Ä±ä£©¡£Ê×ÏÈ£¬À´µ½±£´æÐ project µÄĿ¼Ï£º

cd /Users/YOUR-USERNAME/Desktop/NoGitExample

±ðÍüÁ˰ÑÉÏÃæµÄÖ¸Áî¸ÄΪÄã×Ô¼º Mac µÄÓû§Ãû¡£½ÓÏÂÀ´£º

git init

Õâ»á³õʼ»¯Ò»¸ö¿ÕµÄ repository¡£È»ºóÈç¹ûÄã´ò¿ª Finder »òÕßÔÚ terminal ÊäÈë ls Ö¸ÁÄã»á¿´µ½ .git ×ÓĿ¼ÒѾ­´´½¨³öÀ´ÁË¡£Ì«°ôÁË¡£¼ÌÐøÍùÏ£º

git add .

ÓÃÕâ¸öÖ¸Áµ±Ç°Ä¿Â¼£¨µãºÅ[.]£©µÄËùÓÐÄÚÈݶ¼»áÌí¼Óµ½ repository ÖС£×îºó£¬Ìύȫ²¿£¨Ò²¾ÍÊdz־ñ£´æËù×öµÄ¸ü¸Ä£©£º

git commit -m 'Initial commit'

Terminal ´°¿ÚÖлá³öÏÖÌá½»µ½±¾µØ git repository µÄÎļþÁÐ±í¡£ÏÂͼ¾ÍÊÇÎÒµÄterminalµÄÑù×Ó£º

git repository ÒѾ­×¼±¸ºÃÁË£¬µ«ÊÇÈç¹ûÄã»Øµ½ Xcode£¬´ò¿ª Source Control ²Ëµ¥£¬Äã»á·¢ÏÖÒ»Çж¼»¹ÊDz»¿ÉÓõġ£

ÕâÊÇÒòΪ Xcode ²»»á×Ô¶¯±»Í¨Öªµ½£¬ÎÒÃÇÒѾ­ÊÖ¶¯Ìí¼ÓÁË git repository¡£Òò´Ë£¬µã»÷²Ëµ¥ Xcode > Quit Xcode À´¹Ø±Õ Xcode £¬È»ºóÔÙÖØÆô¡£ÏÖÔÚ£¬ÔÚ NoGitExample ÏîÄ¿ÖУ¬Èç¹ûÄãÔÙ´ò¿ª Source Control ²Ëµ¥£¬Äã»á¿´µ½ÕâЩµÄÑ¡Ïî¶¼¿ÉÓÃÁË£¬¸úÎÒÃÇ´´½¨ project ʱ¾ÍÌí¼ÓÁË git repository µÄЧ¹ûÏàͬ¡£

µ½ÁËÕâÒ»²½£¬¾Í¿ÉÒԹرÕÕâ¸ö NoGitExample ÏîÄ¿£¬Ò²¿ÉÒÔ°ÑËü´Ó×ÀÃæÉÏɾ³ýÁË¡£

ÏÖÔÚÄãÒѾ­Äܹ»ÖªµÀÔõôΪһ¸ö project Ìí¼Ó git repositoryÁË¡£²¢ÇÒ¼´Ê¹ÄãÔÚ´´½¨ project ʱÓÐÒâ»òÎÞÒâûÓÐÌí¼Ó git repository£¬Ò²¿ÉÒÔËæÊ±ÊÖ¶¯Ìí¼Ó¡£

Ìá½»¸ü¸Ä

˵µ½ËùνµÄ¡°Ìá½»¸ü¸Äµ½ repository¡±£¬ÎÒÃÇʵ¼ÊµÄÒâ˼ÊÇ£º´æ´¢ÎÒÃÇÏîÄ¿µÄÒ»¸öа汾¡£Ð°汾°üº¬Ä¿Ç°ÒÑ×÷³öµÄËùÓиü¸Ä£¬±ÈÈç´úÂëÐ޸ĻòÕßÐÂÌí¼ÓµÄÎļþ¡£Ò»°ãÀ´Ëµ£¬Ò»´ÎÌá½»Ó¦¸Ã·¢ÉúÔÚÒ»¶¨Á¿µÄ¹¤×÷ÒѾ­Íê³É£¬²¢ÇÒÏîÄ¿´¦ÓÚÎȶ¨×´Ì¬Ö®Ê±¡£¹ØÓÚÌá½»µÄƵÂÊÓ¦¸ÃÊǶà¾ÃÒ»´Î£¬²¢Ã»ÓÐÒ»¶¨Ö®¹æ£¬µ«ÎÒ½¨Ò飺Èç¹ûÄãÈÏΪ´ÓÉÏÒ»´ÎÌá½»µ½ÏÖÔÚÖ®¼ä£¬ÄãËù×öµÄ¹¤×÷Èç¹ûÒâÍⶪʧ£¬»áÔì³É¾Þ´óµÄʱ¼ä¾«Á¦ÀË·Ñ£¬ÄǾÍÒ»¶¨ÒªÌá½»Ò»ÏÂÁË¡£

Xcode ĬÈÏ»áÔÚÐÂÏîÄ¿´´½¨Ê±×öÒ»´Î³õʼÌá½»£¬Ä¿µÄÊDZ£´æÒ»¸öÏîÄ¿³õʼ״̬µÄ°æ±¾¡£Õâ´ÎÌá½»ÊÇÔÚÄ»ºóÍê³ÉµÄ£¬²»»á´òÈÅÄ㣬Ҳ²»»áÒªÇóÄãÈ·ÈÏ¡£Èç¹ûÄãÔÚ´´½¨ÏîĿʱûÓÐÌí¼Ó git repository£¬ÊÇÈçǰËùÊöÔÚÖ®ºóÊÖ¶¯Ìí¼ÓµÄ£¬³õʼÌá½»ÊÇͨ¹ýÕâ¸öÖ¸ÁîÍê³ÉµÄ£ºgit commit -m ¡®Initial commit¡¯ ÎÒÃÇ֮ǰÓùýÕâ¸öÖ¸Áî¡£

ʵ¼ÊÉÏ£¬Äã¿ÉÒÔ¿´µ½³õʼÌá½»µÄÏà¹ØÐÅÏ¢£¬Ö»Ðèµã»÷²Ëµ¥ Source Control > History¡­ ¡£ÔÚÕâÀï¼Ç¼ÁËÄã¶ÔÏîÄ¿µÄÿһ´ÎÌá½»¡£

ÎÒÃÇÏÖÔÚÀ´³¢ÊÔһЩ²Ù×÷°É£¬Ê×ÏÈÒª¶ÔÏîÄ¿×öµã¸Ä¶¯¡£À´µ½ ViewController.m Îļþ£¬ÔÚ private class ²¿·ÖÌí¼ÓÒÔÏ嵀 property ÉùÃ÷£º

@interface ViewController ()

@property (nonatomic) int sum;

@end
½ÓÏÂÀ´£¬ÐÞ¸Ä viewDidLoad ·½·¨ÈçÏ£º

- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.

int a = 5;
int b = 10;

self.sum = a + b;

NSLog("The result is: %d", self.sum);
}

Èç¹ûÄã¿´Ò»ÑÛ Project Navigator £¨¼´×ó±ßÀ¸£©£¬Äã»á×¢Òâµ½ÔÚ ViewController.m ÎļþºóÃæ£¬¶àÁËÒ»¸ö×Öĸ M£¬ÈçÏÂͼËùʾ£º

ÕâÒâζ×ÅÕâ¸öÎļþÒѾ­±»ÐÞ¸ÄÁË£¬²¢ÇÒÏà±ÈÉÏ´ÎÌá½»µÄ°æ±¾È·ÊµÓи͝¡£Ò»°ãÀ´Ëµ£¬Ã¿´ÎÄã¸Ä¶¯Ò»¸öÎļþÖ®ºó£¬×Öĸ M ¾Í±íʾÒÑÓи͝£¬»¹Î´Ìá½»¡£

ÈÃÎÒÃÇÀ´¿´¿´ÔõôÌá½»´úÂë¡£ÕâÊǺܼòµ¥µÄ£¬½öÐèÒª´ò¿ªSource Control > Commit²Ëµ¥£¬ÈçÏ´°¿ÚËùʾ£º

Ò»²½Ò»²½µÄÈÃÎÒÃÇ¿´¿´Ëü¸æËßÁËÎÒÃÇʲô¡£ÔÚ×ó±ß·½¿ò£¨ÔÚͼƬÖбêʶΪ#1µÄ²¿·Ö£©£¬Õâ¶ùÁгöÁËËùÓÐÒÑÐ޸ĵÄÎļþ¡£ÔÚÎÒÃǵÄÀý×ÓÖУ¬½ö½öViewController.mÎļþ±»Ð޸ģ¬Òò´Ë½ö½öÏÔʾÁËÒ»¸öÎļþ¡£Èç¹ûÄã×Ðϸ¹Û²ì£¬Ä㽫¿´µ½ÎļþµÄ×ó²àÓÐÒ»¸öȱʡѡÖеĸ´Ñ¡¿ò¡£¼ÙÈçÄ㲻ѡÖÐËü£¬ÒѾ­Ð޸ĵÄÎļþ½«²»»á±»Ìá½»¡£µ«ÊÇÏÖÔÚÕâ²»ÊÇÎÒÃÇÏëÒªµÄ¶«Î÷£¬Òò´ËÈÃËü±»Ñ¡ÖС£

ÔÚ´°¿ÚµÄÖмäλÖ㨱êʶΪ#2µÄ²¿·Ö£©£¬ÓÐÁ½¸öÔ¤ÀÀ¿ò¡£×ó²àÊÇÎļþµÄµ±Ç°°æ±¾£¨Ã»ÓÐÌá½»µÄ£©£¬ÓÒ²àÊÇÎļþµÄ×î½üÌá½»µÄ°æ±¾¡£½ØÍ¼Ãè»æÁËViewController.mÎļþµÄԭʼ״̬¡£

×óÀ¸µÄÀ¶É«ÇøÓò£¨Í¼ÖбêʶΪ#3µÄ²¿·Ö£©£¬ÔÚÓÒÀ¸±ä³ÉÒ»ÌõÏߣ¬ÕâÏÔʾÁËÎļþÖеÄʵ¼Ê¸Ä¶¯¡£ÕâÑùµÄ±íʾ·¨ÈÃËùÓеĸĶ¯Ò»Ä¿ÁËÈ»£¬²¢ÇÒÄܶÔÓ¦µ½¸Ä¶¯µÄ¾ßÌåλÖã¨Ðкţ©¡£Ò²ÐíÄã×¢Òâµ½ÁË£¬´°¿ÚµÄÖÐÑ룬ÔÚÁ½¸öÔ¤ÀÀÀ¸Ö®¼ä£¬ÓÐһЩСµÄÔ²½Ç±êÇ©£¬ÉÏÃæÐ´×ÅÊý×Ö£¨Í¼ÖбêʶΪ#4£©¡£ÕâЩ±êǩһ¸öÒ»¸öµØÊý³öÁËÈ«²¿µÄ¸Ä¶¯£¬ÉÏÃæµÄÊý×Ö¾ÍÊǼÆÊýµÄÐòºÅ¡£ÔÚÊý×Ö×ó±ß£¬ÓÐÒ»¸ö¶Ô¹´·ûºÅ¡£Èç¹û³öÏÖÁËÕâ¸ö¶Ô¹´£¬ËµÃ÷¶ÔÓ¦µÄ¸Ä¶¯¿ÉÒÔÕý³£Ìá½»µ½ repository¡£¾¡¹ÜÈç´Ë£¬Ä㻹ÊÇ¿ÉÒÔÑ¡ÔñÌø¹ý£¬ÔÝʱ²»Ìá½»ÎļþµÄijһ¸ö»ò¼¸¸ö¸Ä¶¯£¬ÉõÖÁÅׯúËù×öµÄ¸ü¸Ä£¬Ö»Ðèµã»÷Êý×ÖÓұߵÄСÏÂÈý½Ç¡£º¬ÓÐÁ½¸öÑ¡ÏîµÄС²Ëµ¥½«»á¸¡ÏÖ£º

Èç¹ûÄãÑ¡Ôñ Don¡¯t Commit Ñ¡Ï¶Ô¹´·ûºÅ»á»»³É½ûÖ¹·ûºÅ£¬¶ÔÓ¦µÄ¸Ä¶¯¾Í²»»áÌá½»µ½ repository ÁË¡£

Èç¹ûÄãÑ¡Ôñ²Ëµ¥ÖÐµÄ Discard Change Ñ¡Ï»á³öÏÖÒ»¸öÈ·ÈÏ´°¿Ú£¬ÌáÐÑÄãÑ¡Öеĸ͝½«»á±»»Ø¹ö£¬²¢ÇһعöÊÇÎÞ·¨±»³·ÏúµÄ¡£

Èç¹ûÄãµã»÷ OK °´Å¥£¬ÏìÓ¦ÇøÓòÖеĸ͝»áÏûʧÎÞ×Ù£¬·Â·ð´ÓûÀ´µ½ÊÀÉÏ¡£

Èç¹ûÄãÓÐÁôÐĹ۲ìÉÏÃæµÄÌá½»´°¿Ú½ØÍ¼£¬Äã»á·¢ÏÖËùÓеÄÐ޸ͼ»á±» Xcode ÈÏΪÊǸ͝£¬¼´Ê¹Ò»¸ö¿ÕÐÐÒ²²»ÀýÍâ¡£ÊÂʵÉÏ£¬¿ÕÐÐÊÇÆÁÄ»Éϲ»ÏÔʾµÄ»»Ðзû£¬ËùÒÔËü±»ÊÕ¼¯ÎªÒ»Ïî¸Ä¶¯ÊǺÏÇéºÏÀíµÄ¡£

×ÜÖ®£¬¶ÔÓÚÕâ¸öÑùÀý£¬È·±£ÄãûÓжªÆúÈκθ͝£¬ÔÊÐíÒ»Çж¼Ìá½»¡£Òò´ËÄãÓ¦¸Ã¿´µ½ËùÓеÄÔ²½Ç label É϶¼ÓжԹ´¡£

ÔÚÕâÁ½À¸Ö®ÏÂÊÇһƬ¿Õ°×ÇøÓò£¬Öмäд×Å¡°Enter commit message here¡±¡£Õâ¸öÇøÓòÓÃÀ´¸½¼ÓһЩ¼ò¶ÌÐÅÏ¢£¬ÃèÊöÕâ¸ö°æ±¾Ëù×öµÄ¸ü¸Ä¡£µã»÷Ëü£¬ÌîÉÏÏÂͼËùʾµÄÄÚÈÝ£º

Ìîд£¨ÓÐÒâÒåµÄ£©Ìá½»ÐÅÏ¢ÖÁ¹ØÖØÒª£¬ÓÈÆäÊÇÔÚÌá½»´ÎÊýºÜ¶àµÄÇé¿öÏ¡£ËùÒÔ£¬Òª°ÑËüµ±×ö²»¿É»òȱµÄÒ»²½¡£

¼ÈÈ»ÎÒÃÇÒѾ­ä¯ÀÀÁËÒ»±éÕâ¸ö´°¿ÚµÄÖ÷ÒªÄÚÈÝ£¬ÏÂÃæÎÒÃÇÀ´×öµÚÒ»´ÎÌá½»°É¡£ÔÚ´°¿ÚµÄÓÒϽǣ¬ÓÐÒ»¸ö°´Å¥Ð´×Å£ºCommit 1 file.

ÔÚÕâ¸ö°´Å¥À×ÜÊÇ»áд×ÅÌá½»µÄÎļþ×ÜÊý¡£µã»÷Ëü£¬È»ºó¹§Ï²£¡ÄãµÄµÚÒ»´ÎÌá½»ÒѾ­µ®Éú£¬½«»áÓÀ¾ÃÔØÈëÀúÊ·£¬²»½öÊÇÄã¸öÈ˵ÄÀúÊ·£¬Ò²ÊÇ git µÄÀúÊ·¡£ÕâÊÇʲôÒâË¼ÄØ£¿Ö»Òª´ò¿ª²Ëµ¥É쵀 Source Control > History¡­£¬¾Í¿ÉÒÔ¿´µ½ËüÁÐÔÚÕâÀï¡£

ÈçÄãËù¼û£¬ÎÒÃÇ֮ǰдµÄÌá½»ÐÅÏ¢ÒÔ¼°¸Ä¶¯µÄÎļþ×ÜÊý¶¼³öÏÖÔÚÕâÀïÁË¡£ÔÚ Xcode ×ö³öµÄ³õʼÌá½»ÖУ¬Ìá½»ÁËËùÓÐÎļþ£»µ«ÊÇÎÒÃÇÖ»¸Ä¶¯ÁËÆäÖÐÒ»¸ö¡£

³ý´ËÖ®Í⣬Èç¹ûÄã¹Ø±Õ history ´°¿Ú£¬ÔÙ¿´¿´ Project Navigator ×ó±ßÀ¸£¬ViewController.m ÎļþÅÔ±ßµÄ M ×ÖĸҲÏûʧÀ²£¡

ÏÖÔÚ£¬ÎÒÃÇ×¼±¸ÔÙ×öÒ»´ÎÌá½»°É¡£ÕâÒ»´Î£¬ÎÒÃÇÀ´ÎªÏîÄ¿Ìí¼ÓһЩÐÂÎļþ£¬×îºÃµÄ·½Ê½Äª¹ýÓÚ´´½¨Ò»¸öÐÂÀà¡£ÄÇô£¬°´Ï¼üÅÌÉ쵀 Command + N ¼ü£¬È»ºóÌí¼ÓÒ»¸ö Objective-C class¡£°ÑËüÉèΪ NSObject µÄ×ÓÀ࣬ÃüÃûΪ TestClass¡£×îºó£¬Ìí¼Óµ½ÏîÄ¿ÖС£

Ò»µ©ÉÏÃæÕâЩ¶¼Íê³ÉÁË£¬×¢Òâ×ó±ßÀ¸ Project Navigator ÖеÄÁ½¸öÀàÎļþÅԱ߶¼³öÏÖÁËÒ»¸ö×Öĸ A £»Òâ˼ÊÇÕâÁ½¸öÎļþÊǺóÌí¼Óµ½ÏîÄ¿Öеģ¬Òò´Ë×ÔÈ»ËüÃÇ»¹Ã»Óб»Ìá½»¹ý¡£

´ò¿ª ViewController.h Îļþ£¬È»ºó import ÎÒÃǵÄÀà:

<!DOCTYPE HTML>

½ÓÏÂÀ´£¬´ò¿ª ViewController.m Îļþ£¬ÈçÏÂÉùÃ÷Ò»¸ö private ÊôÐÔ£º

<!DOCTYPE HTML>

ÔÙ¿´×ó±ßÀ¸ Project Navigator£¬×¢Òâµ½ÏÖÔÚÓÐ4¸öûÓÐÌá½»µÄÎļþÁË¡£Á½¸öÀàÎļþÊÇÎÒÃǸÕÌí¼ÓµÄ£¬»¹ÓÐÁíÍâÁ½¸ö±¾À´¾ÍÓеÄÎļþ¡£ÎÒÃÇÐèÒª½«ÕâЩ¸Ä¶¯Ò²Ìá½»£¬Òò´Ë´ò¿ª Source Control > Commit¡­ ²Ëµ¥¡£

ÕâÒ»´Î£¬Ñ¡ÖÐÁË5¸öÓдýÌá½»µÄÎļþ¡£µÚ5¸öÎļþ£¨ÏÔʾÔÚµÚ1ÐУ©ÊÇÏîÄ¿µÄÅäÖÃÎļþ£¬ÊÇÔÚÌí¼ÓÐÂÀàʱÓÉ Xcode ×Ô¶¯Ð޸ĵġ£Èç¹ûÄãµã»÷ TestClass.h »ò TestClass.m Îļþ£¬×ó£¨ÒëÕß×¢£ºÔ­ÎÄ¿ÉÄܱÊÎ󣬴˴¦Ó¦¸ÃΪ¡°ÓÒ¡±£©À¸»á±äΪһƬ¿Õ°×£¬ÈçÏÂͼËùʾ£º

ÕâÊÇÒòΪÕâÁ½¸öÎļþ֮ǰûÓÐÌá½»¹ý£¬Òò´ËûÓÐ֮ǰµÄ°æ±¾¿ÉÒԶԱȡ£ËùÒÔ£¬ÓÒÀ¸Àïֻд×Å¡°File was added¡± ¾ÍÊÇÔÙÕý³£²»¹ýµÄÁË¡£

À´µ½Ìá½»ÐÅÏ¢ÇøÓò£¬ÌîдÌá½»ÐÅÏ¢: TestClass class was added to the project¡£Íê³ÉÖ®ºó£¬µã»÷ Commit 5 files °´Å¥£¬Èà Xcode Ìá½»¸ü¸Äµ½ git repository¡£

µÚ¶þ´ÎÊÖ¶¯Ìá½»ÒѾ­Ë³ÀûÍê³ÉÁË¡£¿ÉÒÔ´ò¿ªÌá½»ÀúÊ·À´ÑéÖ¤£¬Ôڲ˵¥ Source Control > History¡­ ÖÐ:

   
3853 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

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

ÅäÖùÜÀíÁ÷³Ì
ÅäÖùÜÀí°×ƤÊé
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