±¾²©ÎIJ»Í¬ÓÚÍøÉÏËæ´¦¿É¼ûµÄ¡¶MavenʹÓý̡̳·¡¶GitʹÓý̡̳·µÈÖ®ÀàµÄÎÄÕ¡£ÎÒ²¢²»»á´ÓÈí¼þµÄ°²×°ºÍ»ù±¾µÄÃüÁʼ½²Æð£¬¶øÊÇͨ¹ý̽ÌÖËûÃǰüº¬ÁËÄÄЩÉè¼ÆÕÜѧºÍÄÜΪÎÒÃÇ´øÀ´Ê²Ã´ÑùµÄÏîÄ¿¹ÜÀíÌåÑ飬Èôó¼ÒÄÜÔÚ×î¶ÌµÄʱ¼äÄÚͨ¹ýһƪ²©¿ÍÉÏÊÖMavenºÍGit¡£
MavenÊÇÒ»¸öÓÅÐãµÄJavaÏîÄ¿¹ÜÀí¹¤¾ß¡£ÔÚÓÃJava×öÏîĿʱ£¬ÏîÄ¿µÄ´´½¨¡¢±àÒë¡¢²âÊÔ¡¢´ò°üºÍ°²×°²¿Êð¶¼ÐèÒªÇÃÈë²»ÉÙµÄÃüÁ¶øÇÒÔÚ±àÒëºÍÔËÐÐJava³ÌÐòʱ£¬±ØÐëÄÜ´ÓCLASSPATHÖÐÕÒµ½¸ÃÏîÄ¿ÒÀÀµµÄjar°ü£¬·ñÔò±àÒëÎÞ·¨Ë³Àû½øÐУ¬¸ü²»¿ÉÄܳɹ¦ÔËÐС£Îª½â¾öÕâЩÎÊÌ⣬MavenÓ¦Ô˶øÉú¡£
MavenµÄÌØµã£º
1.¿ÉÒÔ¸ù¾ÝÄ£°å´´½¨ÏîÄ¿£¬Ò²¿ÉÒÔ´ÓÒÑÓеÄÏîÄ¿Éú³ÉÄ£°å£¬ÕâÀïµÄÄ£°å£¬MavenÊõÓï½Ðarchetype£»
2.×Ô¶¯¹ÜÀíÒÀÀµµÄjar£»
3.ÅäÖÃÎļþ·Ç³£¼ò¶Ì£»
4.¿ÉÒÔÓзdz£·á¸»µÄ²å¼þ£¬¶Ô´ó²¿·ÖÈËÀ´Ëµ£¬Ê¹Óòå¼þ·Ç³£¼òµ¥£¬²»ÐèÒªÁ˽â²å¼þÔõô±àд£¬¶øÇÒ²å¼þµÄÏÂÔØºÍ¹ÜÀí¶¼ÊÇ×Ô¶¯µÄ¡£
Maven¹Ø¼ü´Ê£ºconvention; phase; archetype; groupId; artifactId;
plugin; task; dependency; repository
ÒÔÏÂÊÇÎÒ¶ÔMavenµÄÀí½â¡£
Maven¹ÜÀíÒ»¸öÏîĿʱ£¬»áÔÚÏîÄ¿µÄĿ¼Ï·ÅÒ»¸öpom.xmlÅäÖÃÎļþ£¬¸ÃÅäÖÃÎļþ·Ç³£¼ò¶Ì¡£Ö®ËùÒÔÄܹ»×öµ½ÈÃÅäÖÃÎļþ·Ç³£¼ò¶Ì£¬ÊÇÒòΪMaven¹ÜÀíÏîÄ¿µÄʱºò×ñѵÄÊÇÒ»ÖÖ¹ßÀý£¨convention£©£¬MavenÏîÄ¿µÄĿ¼½á¹¹»ù±¾Êǹ̶¨µÄ£¬¶øÇÒ¶ÔÏîÄ¿¹ÜÀíÖеĸ÷¸ö½×¶Î£¨phase£©µÄ¶¨ÒåÒ²Êǹ̶¨µÄ£¬ËùÒÔ¼´Ê¹²»ÔÚpom.xmlÅäÖÃÎļþÖÐ×öÈκÎÌØÊⶨÒ壬Ҳ¿ÉÒÔʹÓÃMavenµÄ±ê×¼ÃüÁîmvn
compile¡¢mvn test¡¢mvn package¡¢mvn install×Ô¶¯½øÐÐÏîÄ¿µÄ±àÒë¡¢²âÊÔ¡¢´ò°ü¡¢°²×°¡£
¶ÔÓÚ¸´ÔÓµÄÈÎÎñÔòÊÇͨ¹ý²å¼þ£¨plugin£©À´Íê³É£¬¶¨ÒåÔÚ²å¼þÖеIJÙ×÷³ÆÎªÈÎÎñ£¨task£©£¬Ê¹ÓõĸñʽΪmvn
plugin:task¡£Ê¹ÓÃMaven´´½¨Ò»¸öÐÂÏîÄ¿¾ÍÊÇͨ¹ýarchetype²å¼þµÄgenerateÈÎÎñ×öµ½µÄ£¬ÃüÁî¸ñʽΪmvn
archetype:generate¡£Í¬Ñù£¬¿ÉÒÔΪMaven¹ÜÀíµÄÏîÄ¿Éú³ÉEclipseµÄÏîÄ¿Îļþ£¬ÃüÁîΪmvn
eclipse:eclipse¡£²å¼þºÍÒÀÀµÏîÒ»Ñù£¬Ò²ÊÇ×Ô¶¯ÏÂÔØºÍ¹ÜÀíµÄ£¬²»ÐèÒªÓû§¸ÉÔ¤¡£
×Ô¶¯ÏÂÔØµÄÒÀÀµÏîºÍ²å¼þ¶¼´æ·ÅÔÚ±¾µØ²Ö¿â£¨repository£©ÖУ¬¸Ã²Ö¿âÒ»°ãλÓÚÓû§Ä¿Â¼µÄ.m2Ŀ¼Ï¡£ÎÒÃÇ×Ô¼ºµÄÏîĿִÐÐmvn
installʱ£¬Ò²Ä¬Èϰ²×°µ½¸Ã²Ö¿âÖС£Ã¿Ò»¸öÏîÄ¿¶¼ÐèÒªÓÃgroupId¡¢artifactIdºÍversionÀ´±êʶ£¬°üÀ¨ÎÒÃÇ×Ô¼ºµÄÏîÄ¿¡¢ÒÀÀµÏî¡¢²å¼þ¡¢´´½¨ÐÂÏîĿҪÓõ½µÄÄ£°åµÈ¶¼ÊÇÈç´Ë¡£Ê¹ÓÃmvn
archetype:generate´´½¨ÐÂÏîĿʱÐèÒªÖ¸¶¨archetypeGroupIdºÍarchetypeArtifactId¡£groupId´ú±í¸ÃÏîÄ¿ËùÔÚµÄС×飬±ÈÈçorg.apache.maven£¬ÕâÊÇJavaÊÀ½çµÄÃüÃûÕÜѧ£¬ÔÚÕâÀï²»ÏêϸÐðÊö£¬artifactIdÔòÖ»ÐèÒª¼òµ¥Ö¸¶¨Ò»¸öÏîÄ¿µÄÃû×Ö¼´¿É£¬´ò°ü³ÉjarÎļþµÄʱºò£¬»áÉú³ÉÃû×ÖΪartifactId-version.jarµÄÎļþ¡£
ÏÂÃæ¿´¾ßÌåʾÀý¡£Èç¹ûÒª´´½¨Ò»¸ö¿ÕÏîÄ¿£¬Ê¹ÓÃÈçÏÂÃüÁ
mvn archetype:generate \ -DarchetypeGroupId=org.apache.maven.archetypes \ -DarchetypeArtifactId=maven-archetype-quickstart \ -DgroupId=com.xkland.maven-example \ -DartifactId=maven-example |
Èç¹ûÒªÉú³ÉÒ»¸ö¿Õ°×µÄWebÏîÄ¿£¬Ê¹ÓÃÈçÏÂÃüÁ
mvn archetype:generate \ -DarchetypeGroupId=org.apache.maven.archetypes \ -DarchetypeArtifactId=maven-archetype-webapp \ -DgroupId=com.xkland.maven-web-example \ -DartifactId=maven-web-example |
´ÓÉÏÃæÃüÁî¿ÉÒÔ¿´³ö£¬Òª´´½¨²»Í¬ÀàÐ͵ÄÏîÄ¿£¬Ö»ÐèÒªÖ¸¶¨²»Í¬µÄarchetype¼´¿É¡£ÏÂÃæÎÒÃÇ¿´¿´ÓÃÒÔÉÏÃüÁîÉú³ÉµÄÏîÄ¿µÄÎļþ½á¹¹¡£

ÔÙÒÔSpringSide4ΪÀý¡£ÏÈ´ÓGithubÉϽ«SpringSide4¿Ë¡ÏÂÀ´¡££¨ÉÔºó»á½²µ½Git£©ÃüÁîÈçÏ£º
git clone https://github.com/springside/springside4.git |
½øÈëspringside4Ŀ¼£¬¿ÉÒÔ¿´µ½ÀïÃæÓÐÈý¸öÖ÷ÒªµÄĿ¼£¬·Ö±ðΪexamples¡¢modules¡¢supports¡£½øÈëµ½modulesĿ¼£¬ÔËÐÐmvn
install¾Í¿ÉÒÔ½«SpringSide4°²×°µ½±¾µØ²Ö¿âÁË£¬¾ÍÕâô¼òµ¥¡£²»¹ý£¬Õâ¸ö²Ù×÷Òª»¨µÄʱ¼ä±È½Ï³¤£¬ÒòΪÐèÒªÏÂÔØºÜ¶àÒÀÀµµÄ¿â¡£
°²×°ºÃSpringSide4ºó£¬Òª´´½¨»ùÓÚSpringSideµÄÏîÄ¿£¬ÏȽøÈësupport/maven-archetypeĿ¼£¬ÔËÐÐmvn
install°²×°SpringSideµÄarchetype£¬È»ºóÖ»ÐèÒªÈçÏÂÃüÁî¼´¿É£º
mvn archetype:generate \ -DarchetypeGroupId=org.springside.examples \ -DarchetypeArtifactId=quickstart-archetype \ -DarchetypeVersion=4.1.1-SNAPSHOT \ -DgroupId=com.xkland.springside-sample \ -DartifactId=springside-example |
¸ÃÃüÁîÉæ¼°µ½µÄ֪ʶ²»³¬¹ýÎÒ֮ǰµÄÂÛÊö¡£ÎÒÕâÀïûÓн²µ½pom.xmlÎļþµÄÅäÖÃÓï·¨£¬´ó¼Ò¿ÉÒԲο¼¹Ù·½Îĵµ£¬ºóÃæ£¬ÎÒÃÇ»á½øÈëIDEʱ´ú¡£
Èí¼þ¿ª·¢¹ý³ÌÖУ¬»¹ÓÐÁíÍâÒ»¸öÎÊÌâÐèÒª½â¾ö£¬ÄǾÍÊÇÔ´´úÂëµÄ°æ±¾¿ØÖƺͶàÈËÐ×÷¡£ÏÖÔÚ×îÁ÷ÐеÄÊǰ汾¿ØÖÆÈí¼þÊÇGit£¬Ô½À´Ô½¶àµÄ¿ªÔ´Èí¼þ´ÓSubversionÇ¨ÒÆµ½ÁËGit¡£
GitµÄÌØµã£º
1.GitÊÇ·Ö²¼Ê½µÄ°æ±¾¿ØÖÆÏµÍ³£¬ËüûÓÐÖÐÐÄ·þÎñÆ÷µÄ¸ÅÄËäȻʵ¼Ê¿ª·¢ÖпÉÒÔ½¨Ò»¸öÖÐÐÄ·þÎñÆ÷£©£¬Ã¿Ò»Ì¨¿ª·¢»úÆ÷É϶¼±£´æÍêÕûµÄÀúÊ·¼Ç¼£»µ«ÊÇËüÓб¾µØ´úÂë²Ö¿âºÍÔ¶³Ì´úÂë²Ö¿âµÄ¸ÅÄ²»È»Ôõô¶àÈËÐ×÷£¿£©£¬¶øÇÒ¿ÉÒÔ×·×Ù¶à¸öÔ¶³Ì²Ö¿â£»
2.GitÄܹ»·Ç³£¿ìµØ½¨Á¢·ÖÖ§ºÍºÏ²¢·ÖÖ§£¬²¢¾ßÓÐÇ¿´óµÄ¸ú×Ù·ÖÖ§ºÍÇл»·ÖÖ§µÄÄÜÁ¦¡£
ÒÔÉÏÁ½¸öÌØµã¾ö¶¨ÁËʹÓÃGit¹¤×÷µÄÁ÷³Ì¡£¹ØÓÚGitµÄʹÓú͹¤×÷Á÷³Ì£¬ÎÒ½«ÔÚºóÃæÏêϸÐðÊö¡£ÏÈÀ´¿´¿´ÒªÀí½âGitÐèÒªÀí½âÄÄЩ¹Ø¼ü´Ê¡£
GitµÄ¹Ø¼ü´Ê£ºworking directory; repository;
stage; commit; remote; branch; merge
ÏÂÃæÊÇÎÒµÄÀí½â¡£
ÿһ¸öÏîÄ¿¶¼Ó¦¸ÃÓÐÒ»¸ö¹¤×÷Ŀ¼£¨Working directory£©£¬ÎÒÃÇ¿ÉÒÔ×Ô¼º½¨Ò»¸öĿ¼£¨Õâ²»ÊÇ·Ï»°Â𣿱𼱣¬ÏÂÃæ»¹ÓС££©£¬È»ºó°ÑÕâ¸öĿ¼ÀïÃæµÄ´úÂëÓÃGit¹ÜÀíÆðÀ´£¨Ê¹ÓÃgit
initÃüÁîºÍgit addÃüÁºóÃæÏêÊö£©£¬Ò²¿ÉÒÔͨ¹ýgit cloneÃüÁî´Ó±ðµÄµØ·½¿Ë¡һ¸öÏîÄ¿¹ýÀ´×Ô¶¯Éú³ÉÒ»¸ö¹¤×÷Ŀ¼¡£ÔÚ¹¤×÷Ŀ¼ÖеÄÎļþ¾ÍÊǵ±Ç°±à¼ºÍÐ޸ĵÄÎļþ£¬Èç¹ûÊÇн¨Á¢µÄĿ¼»òÐÂcloneÀ´µÄĿ¼£¬¹¤×÷Ŀ¼ÖеÄÎļþ¾ÍÊǸÃÏîÄ¿×îеÄ״̬¡£GitÊÇÔÚ±¾µØ±£´æÓÐËùÓеÄÀúÊ·¼Ç¼ºÍ·ÖÖ§¼Ç¼µÄ£¬ÕâЩÄÚÈݶ¼ÔÚ¹¤×÷Ŀ¼µÄ.gitĿ¼ÖУ¬³ÆÖ®Îª±¾µØ²Ö¿â£¨local
repository£©¡£µ±Çл»·ÖÖ§»ò²é¿´ÒÔǰµÄÀúÊ·°æ±¾Ê±£¬¹¤×÷Ŀ¼ÖеÄÎļþ×Ô¶¯¸Ä±ä£¨Õâ²ÅÊÇÖØµã£¬¹¤×÷ÎÞÐèÇл»Ä¿Â¼£¬Ä¿Â¼ÖеÄÎļþ»á×Ô¶¯Çл»£©¡£¹¤×÷Ŀ¼ÖеÄÎļþÓÐÈýÖÖ״̬£ºÒÑÐ޸ġ¢ÒÑÔݴ棨stage£©¡¢ÒÑÌá½»¡£Ð޸ĺóµÄÎļþ¿ÉÒÔÏȼÓÈëÔÝ´æÇøÓò£¬Ò»´Î¹¤×÷½áÊøºóÒ»ÆðÌá½»¡£
GitÊÇ·Ö²¼Ê½µÄ£¬Ã»ÓÐÖÐÐÄ·þÎñÆ÷µÄ¸ÅÄµ«Êµ¼Ê¹¤×÷ÖÐÈÔÈ»¿ÉÒÔ°Ñ´úÂë²Ö¿â·Åµ½Ò»Ì¨´ó¼Ò¶¼¿ÉÒÔ·ÃÎʵķþÎñÆ÷ÉÏ£¬×öʵ¼ÊµÄÖÐÐÄ·þÎñÆ÷ʹÓ㨽öÔÚСÍŶÓʱʹÓô˹¤×÷Á÷³Ì£¬ÔÒòºóÃæÏêÊö£©¡£ÔÚ±¾µØ»úÆ÷ÉϹ¤×÷Íêºó£¬Ê¹ÓÃgit
pushÃüÁî°Ñ²Ö¿âÍÆË͵½·þÎñÆ÷ÉÏ£¬»»Ò»¸öµØ·½»»Ò»Ì¨»úÆ÷ºó£¬Ö»ÐèÒªgit cloneһϣ¬ÓÖ¿ÉÒÔ»ñµÃËùÓеĴúÂ루°üº¬ËùÓеÄÀúÊ·¼Ç¼¼°·ÖÖ§£©¼ÌÐø¹¤×÷¡£·þÎñÆ÷¹ÊÕÏҲûÎÊÌ⣬ÒòΪÿһ¸ö¹¤×÷µÄ»úÆ÷É϶¼±£´æÓÐÍêÕûµÄ´úÂë²Ö¿â£¬ËùÒÔ´Ó²»Óõ£ÐÄ´úÂ붪ʧ¡£Ã»ÓÐÍøÂçҲûÓйØÏµ£¬ÔÚ±¾µØ»úÆ÷ÉÏÕÕÑù¿ÉÒÔÌá½»£¨git
commit£©£¬ÒòΪÕû¸ö²Ö¿â¾ÍÔÚ×Ô¼ºµÄ»úÆ÷ÉÏ£¬µ±ÓÐÍøÂçʱ£¬pushһϾͿÉÒÔÁË¡£
GitÓÐÔ¶³Ì²Ö¿â£¨remote repository£©µÄ¸ÅÄ¶øÇÒ¿ÉÒÔ¹ÜÀíºÜ¶à¸öÔ¶³Ì²Ö¿â£¬Ô¶³Ì²Ö¿â¿ÉÒÔÊÇ·þÎñÆ÷£¬Ò²¿ÉÒÔÊDZðÈ˵ĸöÈ˼ÆËã»ú£¨µ«Ò»°ãûÓÐÈËÕâôÓã©£¬Ã¿Ò»¸öÔ¶³Ì²Ö¿â¶¼ÓÐÒ»¸ö¼ò¶ÌµÄÃû×ÖºÍÒ»¸öµØÖ·£¬×ʼclone´úÂëµÄÄǸöÔ¶³Ì²Ö¿â±ðÃûÍùÍùĬÈÏΪorigin£¬×Ô¼ºÌí¼ÓµÄÔ¶³Ì²Ö¿â¿ÉÒÔËæÒâÖ¸¶¨±ðÃû£¬µ±È»ËùÓеÄÔ¶³Ì²Ö¿â¶¼¿ÉÒÔËæÒâÐ޸ıðÃû¡£¿ÉÒÔ´ÓÔ¶³Ì²Ö¿â»ñÈ¡´úÂ루git
fetchÃüÁî»ògit pullÃüÁ£¬Ò²¿ÉÒÔ°Ñ×Ô¼ºµÄ´úÂëÍÆË͵½Ô¶³Ì²Ö¿â£¨git pushÃüÁÐèҪдȨÏÞ£©¡£
¼ÈÈ»Git¼´¿ÉÒÔËæ±ã´ÓÔ¶³Ì²Ö¿â»ñÈ¡´úÂ룬ÓÖ¿ÉÒÔ°Ñ×Ô¼ºµÄ´úÂëÍÆË͵½Ô¶³Ì²Ö¿â£¬ÄÇôµ±¶àÈËÐ×÷ʱ£¬Æñ²»»áÂÒÌ×Â𣿽â¾öÕâ¸öÎÊÌâµÄ£¬¾ÍÊÇGitµÄ±ØÉ±Ö®¼¼¡ª¡ª´´½¨·ÖÖ§¼°·ÖÖ§ºÏ²¢¡£ÏÂÃæÒªÓÃͼ±íÀ´ËµÃ÷ÎÊÌâÁË¡£ÏÂÃæÒ»ÏµÁÐͼƬÀ´×ÔGit¹Ù·½ÍøÕ¾Éϵĵç×ÓÊé¡¶Pro
Git¡·¡£
Ê×ÏÈ£¬Ëæ×ÅÒ»´Î´ÎµÄÌá½»£¬ÔÚ±¾µØ´úÂë¿âÖÐÐγÉÒ»¸öÖ÷·ÖÖ§£¬ÈçÏÂͼ£º

ÓÐʱΪÁË¿ª·¢ÐÂÌØÐÔ£¬ËæÊ±¿ÉÒÔ¿ªÒ»¸öзÖÖ§£¬ÈçÏÂͼ£º

зÖÖ§ºÍÖ÷·ÖÖ§Ö®¼ä¿ÉÒÔËæÒâÇл»£¬Ëæ×Å·ÖÖ§µÄ·¢Õ¹£¬ÐÎʽÈçÏÂͼ£º

Ö÷·ÖÖ§Ò²¿ÉÒÔÏòǰ·¢Õ¹£¬ÈçÏ£º

×îÖÕ£¬µ±Ð·ÖÖ§´úÂëºÜÎȶ¨ÒԺ󣬿ÉÒÔ½«ÆäºÏ²¢µ½Ö÷·ÖÖ§£¬ÈçÏÂͼ£º

¶øÄܹ»·ÀÖ¹¶àÈËÐ×÷ʱ³öÏÖ»ìÂҵĹؼü¾ÍÔÚÓÚ£¬µ±´ÓÔ¶³Ì²Ö¿âclone´úÂë¿âµ½±¾µØ»òfetch´úÂë¿âµ½±¾µØÊ±£¬Ô¶³Ì·ÖÖ§µÄ±ê¼Ç²¢²»µÈÓÚ±¾µØ·ÖÖ§µÄ±ê¼Ç¡£´ÓÔ¶³ÌcloneÒ»¸ö´úÂë¿âµ½±¾µØºó£¬Æämaster·ÖÖ§ÓÐÁ½¸ö±ê¼Ç£¬Ò»¸ö±ê¼ÇΪorigin/master±íʾԶ³Ì¿âÖеÄmaster·ÖÖ§£¬Ò»¸ö±ê¼ÇΪmaster£¬±íʾ±¾µØµÄmaster·ÖÖ§¡£ÈçÏÂͼ£º

¿ÉÒÔÏëÏó£¬ÓÉÓÚ±ðÈ˵Ť×÷£¬Ô¶³Ì²Ö¿âÖеÄmaster·ÖÖ§¿Ï¶¨»áÏòǰ¼ÌÐøÒÆ¶¯£¬µ«ÊÇÔÚÏ´ÎÁªÍøÖ®Ç°£¬¸Ãorigin/master±ê¼Ç²»»áÒÆ¶¯¡£¶ø±¾µØµÄmaster±ê¼Ç¼ÌÐøÏòÇ°ÒÆ¶¯¡£

Ö±µ½Ï´ÎÁªÍø£¬Ê¹ÓÃgit fetchÃüÁԶ³Ì²Ö¿âµÄÄÚÈÝÈ¡»Ø±¾µØ£¬origin/master±ê¼Ç²Å»á¸Ä±äλÖã¬Õâʱ£¬¿´ÆðÀ´¾ÍÏñÊÇÁ½¸ö·ÖÖ§£¬ÈçÏÂͼ£º

×îºó£¬½«origin/master·ÖÖ§ºÏ²¢µ½master·ÖÖ§ÖУ¨Ê¹ÓÃget
mergeÃüÁ£¬±¾µØ´úÂë¿âÓÖÒ»´Î±ä³ÉÁËÒ»¸öµ¥Ò»µÄmaster·ÖÖ§£¬¼ÌÐøÏòǰ¿ª·¢£¬²¢¿ÉÒÔ½«Ëüpushµ½Ô¶³Ì²Ö¿â£¬¹©±ðÈËʹÓá£
Git³åÍ»µÄ´¦ÀíÍêÈ«¿¿È˹¤Íê³É¡££¨´ÓÂß¼ÉϽ²£¬»úÆ÷Ò²²»¿ÉÄÜÍêÃÀ´¦Àí³åÍ»¡££©±ÈÈçÒ»¸öСÐÍÍŶÓÒ»Æð¹¤×÷£¬ËûÃÇ¿ÉÒÔÉèÖÃÒ»¸ö·þÎñÆ÷ÓÃÓÚ±£´æÔ¶³ÌGit²Ö¿â£¬È»ºóÿ¸öÈ˹¤×÷֮ǰÏÈ´Ó¸ÃÔ¶³Ì²Ö¿âfetch´úÂ룬½Ó׏¤×÷£¬¹¤×÷Íê³Éºó£¬ÏÈÔÚ±¾µØÌá½»£¬×îºópushµ½Ô¶³Ì²Ö¿â¡£µ«Êǵ±Ò»¸öÈËpushµÄʱºò£¬ÒѾÓÐÈËÔÚËû֮ǰpushÁË£¬Èç¹ûËûÃǹ¤×÷ÔÚͬһ¸ö·ÖÖ§£¬¾Í»á³öÏÖ³åÍ»¡£½â¾ö³åÍ»µÄ°ì·¨¾ÍÊÇÏȰѱðÈËpushµÄÄÚÈÝÔÙ´ÎfetchÏÂÀ´£¬ºÏ²¢·ÖÖ§£¬È»ºóÔÙpush¡£
ͨ¹ý֮ǰ¶ÔgitÔÀíµÄÁ˽⣬¿ÉÒÔ·ÖÎöµÃ³öʹÓÃGitʱÓÐÒÔϼ¸ÖÖ¹¤×÷Á÷³Ì£º
1.Ò»¸öÈ˵¥¸É£¬²»ÐèÒª¿¼ÂdzåÍ»£¬ËæÊ±¿ÉÒÔ¿ª·ÖÖ§¡¢ºÏ²¢·ÖÖ§ºÍÇл»·ÖÖ§£¬ËæÊ±¿ÉÒÔ±¾µØÌá½»¡£Èç¹ûΪÁË·ÀÖ¹´úÂ붪ʧ£¬¿ÉÒÔ¿ªÒ»¸ö·þÎñÆ÷£¬Ã¿´Î¹¤×÷Íê³É¾Ípushµ½·þÎñÆ÷ÉÏ£»
2.СÐÍÍŶӺÏ×÷£¬ÈçǰËùÊö£¬¿ªÒ»¸ö·þÎñÆ÷±£´æ´úÂë²Ö¿â£¬È»ºóËùÓеÄÈ˰Ѹ÷þÎñÆ÷µ±³ÉÔ¶³Ì²Ö¿â£¬¹¤×÷֮ǰÏÈfetch£¬¹¤×÷Ö®ºóÔÙpush¡£Èç¹ûÓгåÍ»£¬ÔòÏÈfetch£¬ºÏ²¢·ÖÖ§½â¾ö³åÍ»ºóÔÙpush¡£Èç¹ûÍŶÓÈËÊýÌ«¶à£¬Ã¿¸öÈ˶¼Ïò¸Ã·þÎñÆ÷push£¬ÄdzåÍ»¸ÃÊÇÓжàÉÙ£¿ÓпÉÄÜÒ»¸ö¿ª·¢ÕßµÚÒ»´ÎÏò·þÎñÆ÷pushµÄʱºò£¬ÓÐÈËÔÚËû֮ǰÒѾpush¹ýÁË£¬ËûÖ»ºÃÏÈfetch£¬ÊÖ¹¤ºÏ²¢½â¾ö³åÍ»£¬¿ÉµÈËûÔÙ´ÎpushµÄʱºò£¬·¢ÏÖÓÖÓÐÈËÔÙËû֮ǰÒѾpushÁË£¬ÓÚÊÇËûÖ»ºÃÔÙ×öÒ»´Î½â¾ö³åÍ»µÄÁ÷³Ì£¬¿ÉÊÇÈç¹ûÔÚËû¹¤×÷µÄʱºò£¬ÓÖÓÐÈËpushÁËÄØ£¿ÕâÒ²ÊÇ֮ǰ½²µÄ¸Ã¹¤×÷Á÷³ÌÖ»ÊʺÏСÐÍ¿ª·¢ÍŶӵÄÔÒò¡£
ÒÔÉÏÁ÷³Ì¾¹ýÊʵ±ÐÞ¸ÄÒ²¿ÉÒÔ¹©´óÐÍÍŶÓʹÓã¬ÄǾÍÊǽ«ÍŶӷÖ×飬ÿ¸ö×éµÄ³ÉÔ±¹²ÓÃÒ»¸ö·þÎñÆ÷µ±Ô¶³Ì²Ö¿â£¬×鳤ºÏ²¢Á˸Ã×éµÄ¹¤×÷³É¹ûºó£¬ÔÙpushµ½ÁíÒ»¸ö·þÎñÆ÷µ±×ܵÄÔ¶³Ì²Ö¿â£¬ÕâÑù¾Í¿ÉÒÔ´ó´ó¼õÉÙ³åÍ»µÄÊýÁ¿£¬¼õÉÙ¹¤×÷Á¿¡£
3.¿ªÔ´ÏîÄ¿µÄºÏ×÷£¬ÔÚÕâÖÖÇé¿öÏ£¬Ã¿¸öÈ˶¼°Ñ×Ô¼ºµÄ²Ö¿â±©Â¶ÔÚ»¥ÁªÍøÉÏ¡£¿ªÔ´ÏîÄ¿µÄ×éÖ¯Õß»ò¸ºÔðÈ˽«ËùÓÐÈ˵IJֿâÉèΪԶ³Ì²Ö¿â£¬²¢°ÑÓÐÒâÒåµÄ¹¤×÷ºÏ²¢µ½Ö÷·ÖÖ§£¬È»ºó·¢²¼¹Ù·½µÄGit²Ö¿â¡£Ã¿¸ö¿ª·¢Õß´Ó¹Ù·½²Ö¿âfetch´úÂëºó£¬Íê³É×Ô¼ºµÄ¹¤×÷£¬È»ºóÔÙ°ÑËüpushµ½»¥ÁªÍøÉÏ×Ô¼ºµÄ²Ö¿â£¬µÈ×ÅÏîÄ¿¸ºÔðÈ˽«×Ô¼ºµÄ¹¤×÷ÕûºÏµ½¹Ù·½²Ö¿âÖС£Èç¹ûÏîÄ¿¸ºÔðÈ˲»¸ÉÁË£¬¸ÄÈËÁË£¬Ö»Òª»¹ÓÐÈ˼ÌÐø¿ª·¢£¬¸ÃÏîÄ¿¾Í¿ÉÒÔ¼ÌÐøÏÂÈ¥¡£Åöµ½ÍŶӱȽϴóµÄÇé¿ö£¬Ò²¿ÉÒÔ½øÐзÖ×é¡£
·þÎñÆ÷µÄ½¨ÉèÒ²Ï൱¼òµ¥£¬ÒòΪGitÖ§³ÖÒÔSSH¡¢HTTPµÈÐÒé´«ÊäÊý¾Ý£¬Èç¹ûÐèÒª¶Ô·þÎñÆ÷ÓÐдȨÏÞ£¬¾Í¿ªÍ¨SSH·þÎñ°É£¬ÉèÒ»¸öÕË»§¹©ËùÓÐÈË·ÃÎÊGit²Ö¿â¼´¿É¡£Èç¹ûÖ»ÐèÒªÖ»¶ÁȨÏÞ£¬Ê¹ÓÃÈκÎÒ»¸öHTTP·þÎñÆ÷¾ù¿É¡£¹ØÓÚGit·þÎñÆ÷µÄ½¨É裬Çë×ÔÐвο¼¹Ù·½Îĵµ¡£Èç¹ûÊǸöÈ˵ġ¢¿ªÔ´µÄÏîÄ¿£¬¿ÉÒÔʹÓÃGithubÍøÕ¾ÌṩµÄ·þÎñ£¬Ö±½Ó´æ´¢ÔÚ»¥ÁªÍøÉÏ¡££¨Github˽È˲ֿâÊÇÒªÊÕÇ®µÄ¡££©
¿´À´Òª°ÑGit½²Çå³þ²¢²»ÈÝÒ×£¬ÓÃÁËÕâô¶àƪ·ù¡£ÏÂÃæ°ÑGit³£ÓõÄÃüÁî»Ø¹Ëһϣº
git config ÅäÖÃGit£¬Ò»°ãʹÓò»ÐèÒªÌØ±ðÅäÖ㬵«ÖÁÉÙÒªÉèÖÿª·¢ÕßµÄÃû×ÖºÍÓÊÏä
git initºÍgit add ´´½¨Ò»¸öвֿ⣬²¢¸ú×Ù¹¤×÷Ŀ¼ÏµÄÎļþ
git clone ´ÓÔ¶³Ì¿Ë¡һ¸öÏîÄ¿£¬°üÀ¨¹¤×÷Ŀ¼ºÍ²Ö¿â
git add ½«Ð޸ĺóµÄÎļþ·ÅÈ뻺´æÇøÓò£¨staging area£©£¬»òÕâ±íʾ³åÍ»ÒѾ½â¾ö
git status ÏÔʾÎļþ״̬£¬ÊÇÒÑÐ޸ϹÊÇÒÑ»º´æ»¹ÊÇÒÑÌá½»
git commit Ìá½»ÏîÄ¿
git remote ¹ÜÀíÔ¶³Ì²Ö¿â
git fetchºÍgit pull ´ÓÔ¶³Ì²Ö¿âץȡÊý¾Ý
git push ÏòÔ¶³Ì²Ö¿âÍÆËÍÊý¾Ý
git branchºÍgit merge ´´½¨·ÖÖ§¼°ºÏ²¢·ÖÖ§
git checkout Çл»·ÖÖ§
git»¹ÓÐÒ»¸ö¿ÉÊÓ»¯¹¤¾ßgitk£¬Ê¹ÓÃËü£¬¿ÉÒÔÒÔͼÐλ¯µÄ·½Ê½²é¿´Ìá½»µÄÀúÊ·¡¢·ÖÖ§¼°ºÏ²¢·ÖÖ§µÈÐÅÏ¢¡£ÏÂͼÊÇÎÒÔÚspringside4Ŀ¼ÏÂÖ´ÐÐgitkµÄ½ØÍ¼£º

¿ÉÒÔ¿´µ½ÕâÀïÓÐÒ»¶Î¸´ÔӵĿª·ÖÖ§¡¢ºÏ·ÖÖ§µÄ¼Ç¼¡£
ÕâÆª²©ÎÄÀïûÓÐдMaven¡¢Git¡¢EclipseµÄ°²×°£¬ÒòΪÔÚÎÒµÄϵͳÖÐÖ»ÐèÒªÒ»¸ösudo
apt-get install maven git eclipse¾Íͳͳ¸ã¶¨£¬OpenJDKÉñÂíµÄ£¬×÷ΪÒÀÀµÏȻÊÇ×Ô¶¯°²×°ÁË¡£¶Ô£¬Äãû²Â´í£¬ÎÒÓõÄÊÇUbuntu¡£²Ù×÷ϵͳ°æ±¾Ubuntu
13.10£¬maven 3.0.4¡¢git 1.8.3.2¡¢eclipse 3.8¡£Í¬Ê±¸øeclipse°²×°ÉÏm2e¼°EGit²å¼þ¡£
Èç¹ûÖ»ÊÇ·º·ºµØÐ´MavenºÍGitµÄÓ÷¨£¬ÄǾͲ»ÊÇÎҵķç¸ñÁË£¬ÏÂÃæµ±È»ÊÇshowͼƬÁË¡£Ã»ÓпíÆÁÏÔʾÆ÷µÄÅóÓÑÃǶԲ»ÆðÁË¡£²»¹ý¿ÉÒÔͨ¹ýCtrl+Êó±ê¹öÂÖ½«ÍøÒ³ËõСºó²é¿´¡£
ÏÂͼ£¬ÎÒµÄUbuntu×ÀÃæ£º

ÏÂͼ£¬ÔÚÐéÄâ¿ØÖÆÌ¨£¨gnome-terminal£©ÖÐʹÓüò½à¶ø¹¦ÄÜÇ¿´óµÄÉϹÅÉñÆ÷Vim±à¼Æ÷£¬ÅäºÏ°ë͸Ã÷±³¾°£¬¿á±ÐÁË£º

ÏÂͼ£¬ÎҵŤ×÷½çÃæ£¬Í¬Ê±Ê¹ÓÿØÖÆÌ¨ºÍEclipse£¬·½±ã¸ßЧ£º

µ±ÔÚEclipseÖÐÑ¡Ôñн¨ÏîÄ¿µÄʱºò£¬¿ÉÒÔÑ¡Ôñ½¨Á¢MavenÏîÄ¿»òMavenÄ£¿é£¬ÈçÏÂͼ£º

µãÏÂÒ»²½£¬¿ÉÒÔ¿´µ½ÈÃÑ¡Ôñarchetype£¬ÈçÏÂͼ£º

ÔÙµãÏÂÒ»²½£¬·¢ÏÖÒªÌîдµÄÄÚÈÝÒ²²»³¬¹ý֮ǰÌáµ½µÄ֪ʶ·¶Î§£º

µãFinish£¬¾Í¿ÉÒÔÍê³ÉÒ»¸öMavenÏîÄ¿µÄ´´½¨¡£
µ±È»£¬Ò²¿ÉÒÔµ¼ÈëÒÑÓеÄMavenÏîÄ¿£¬ÈçÏÂͼ£º

¿´¿´pom.xmlÅäÖÃÎļþµÄ¿ÉÊÓ»¯±à¼Æ÷£¬ÕâÒ²ÊÇÎÒ֮ǰ²»½²pom.xmlÅäÖÃÓï·¨µÄÔÒò£¬ÈçÏÂͼ£º

ÒªÔËÐÐMavenÏîÄ¿£¬Çë¿´Run As²Ëµ¥£º

»ñµÃÒ»¸öÓÃGit¹ÜÀíµÄÏîĿҲÊÇÓÐÁ½ÖÖ;¾¶£¬Ò»ÖÖΪʹÓÃEclipseµÄFile->Import²Ëµ¥£¬µ¼ÈëÒ»¸öÒѾ°üº¬Git²Ö¿âµÄÏîÄ¿£»ÁíÒ»ÖÖ·½·¨¾ÍÊÇΪһ¸öÒÑ´æÔÚµÄÏîÄ¿´´½¨Ò»¸öGit²Ö¿â¡£
ÓÃImportµ¼ÈëÏîĿʱ£¬Ò²¿ÉÒÔ´ÓGithub¿Ë¡¡£²»¹ýÎÒµÄEgit²å¼þËÆºõÓеãÎÊÌ⣬ʹÓòå¼þ×Ô´øµÄËÑË÷¹¦Äܲ»ÄÜ´ÓGithubÉÏÕÒµ½ÏîÄ¿£¬µ«ÊÇÖ±½ÓÖ¸¶¨URL¿ÉÒÔ¡£
»¹ÊÇÒÔSpringSideΪÀý¡£Ñ¡ÔñFile->Import£¬µ¯³öÈç϶Ի°¿ò£¬ÈçÏÂͼ£º

µ«ÊÇÔÚÕâÀïÖ»ÄÜÑ¡ÔñProjects from Git£¬Ñ¡ÔñÏÂÃæµÄRepositories from GitHubÊÇËѲ»µ½ÏîÄ¿µÄ¡£
ÏÂÒ»²½£¬ÈçÏÂͼ£º

Ñ¡ÔñURI£¬¼ÌÐøÏÂÒ»²½£¬ÈçÏÂͼ£º

ÊäÈëSpringSide4ÏîÄ¿¿âµÄµØÖ·¡£¿´Çå³þ£¬ÊÇhttpsÐÒéŶ¡£¼ÌÐøÏÂÒ»²½£¬ÈçÏÂͼ£º

Ö»ÓÐÖ÷·ÖÖ§¿ÉÑ¡£¬Èç¹û²»ÊÇÕâÑù£¬¾ÍÑ¡ÔñËùÓзÖÖ§¡£È»ºóÏÂÒ»²½£¬ÈçÏÂͼ£º

ÔÚÕâÀïÐèҪǿµ÷һϣ¬Ò»¶¨ÒªÑ¡ÔñµÚÈý¸ö£ºImport as general
project¡£ÔÒò¾ÍÊÇÒòΪSpringSideµÄ¹¤×÷Ŀ¼ÄÚûÓÐEclipseÏîÄ¿ËùÐèÒªµÄ.projectÎļþ¡£Èç¹ûÊÇÓÃEclipse´´½¨µÄÏîÄ¿£¬±¾Éíº¬ÓÐ.projectÎļþ£¬¾Í¿ÉÒÔʹÓõÚÒ»ÏImport
existing projects¡£ºÃÁË£¬µãFinish£¬springsideÏîÄ¿³É¹¦µ¼Èë¡£ËùÓÐÓйØGitµÄ²Ù×÷¶¼¿ÉÒÔÔÚ¿ì½Ý²Ëµ¥µÄTeam²Ëµ¥ÏîÖÐÕÒµ½£¬ÈçÏÂͼ£º

Èç¹ûÑ¡ÔñShow in history£¬¾Í¿ÉÒÔ¿´µ½ÕâÑùµÄÀúÊ·¼Ç¼£º

´ÓGithubµ¼ÈëÏîÄ¿¾Íչʾµ½ÕâÀÆäËüµÄ¹¦ÄÜÔÚIDE»·¾³Ï´ó¼Ò×Ô¼ºÂýÂýÃþË÷£¬Ó¦¸ÃÊǺܼòµ¥µÄ¡£ÏÂÃæ¿´¿´ÎªÒ»¸öÒѾ´æÔÚµÄÏîÄ¿´´½¨Git²Ö¿â¡£
ÈçÏÂͼ£¬ÔÚmaven-exampleÏîÄ¿µÄ¿ì½Ý²Ëµ¥ÖÐÑ¡ÔñTeam->Share
project£º

µ¯³öÈç϶Ի°¿ò£º

µ±È»ÊÇÑ¡ÔñGit¶ø²»ÊÇCVSÁË¡£ÏÂÒ»²½£¬ÈçÏÂͼ£º

µ½ÕâÀï¾ÍҪעÒâÁË£¬Õâ¸ö¶Ô»°¿òÖÐÓÐÒ»¸öUse or creat repository
in parent folder of projectµÄµ¥Ñ¡¿ò£¬Èç¹û°ÑÊó±ê·ÅÔÚÉÏÃæ£¬»¹ÓÐÌáʾ¡£Ìáʾ˵¹´Ñ¡Õâ¸öµ¥Ñ¡¿òÊDz»ÍƼöµÄ£¬ÒòΪ»áÔÚEclipseµÄ¹¤×÷Ŀ¼Öд´½¨Git²Ö¿â¡£¶øÔÚEclipse¹¤×÷Ŀ¼Öд´½¨Git²Ö¿â¿ÉÄÜ»á³öijЩÎÊÌâ¡£¾ßÌåÊÇʲôÎÊÌ⣬EGit
User GuideÀïÃæÓÐ˵Ã÷¡£
ΪÁË·½±ãÆð¼û£¬»¹Êǹ´Ñ¡Õâ¸öµ¥Ñ¡¿ò¡£¹´Ñ¡ºó£¬¶Ô»°¿ò±ä³ÉÏÂÃæÕâÑù£º

µãCreate Repositoryºó£¬µãFinish¾Í¿ÉÒÔÍê³ÉGit²Ö¿âµÄ´´½¨ÁË¡£
´´½¨Git²Ö¿âºó£¬ÏîÄ¿ÖеÄÎļþ»¹Ã»Óб»Git¸ú×Ù£¬ËùÒÔÏÔʾµÄÊÇÎʺűê¼Ç£¬ÈçÏÂͼ£º

µã¿ì½Ý²Ëµ¥Team->Add to indexºó£¬Îļþ¼ÓÈë×·×Ù£¬ÏÔʾµÄÊÇ+ºÅ±ê¼Ç£¬ÈçÏÂͼ£º

Ìá½»¹¤×÷µÄ¶Ô»°¿ò£¬ÈçÏÂͼ£º

Ìá½»ºó£¬ÏîÄ¿ÖеÄÎļþ±ê¼ÇÈçÏÂͼ£º

ºÃÁË£¬¾ÍдÕâô¶à°É¡£½ØÍ¼Ò²ÊÇÒ»¸öºÜÀÛÈ˵Ť×÷¡£Õ¹Ê¾Õâô¶àͼƬ¿É²»ÊÇΪÁËÈ¡´ú¹Ù·½½Ì³Ì£¬Ö»ÊÇΪÁËչʾһÏÂЧ¹û¡£Èôó¼ÒÖªµÀÕâ¸öIDE»¹ÊǺܺúÜÇ¿´óµÄ£¬×îÖØÒªµÄÊÇ£¬¹¤×÷½çÃæÊÇºÜÆ¯ÁÁµÄ¡£
|