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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Ïê½â±¾µØ¿âµÄʹÓÃÒÔ¼°Ô­Àí(Ò»)
 
À´Ô´£ºcsdn ·¢²¼ÓÚ£º 2017-11-2
  2761  次浏览      27
 

¶ÔÓÚ¹ã´óµÄwindows³ÌÐò¿ª·¢´ó¾ü£¬´ó¼Ò¶¼»áʹÓÃwindowsÉÏÃæµÄgit-bash¿Í»§¶Ë£¬±¾µØµÄgit¿Í»§¶ËÊDz»»áÀ뿪git°æ±¾²Ö¿âµÄ£¬ÒòΪgitµÄ»ù´¡¾ÍÊDzֿ⣬ËùÒÔÎÒÃÇҪѧ»áʲôÊÇÒ»¸ö²Ö¿â. ²¢ÇÒÃ÷°×²Ö¿âÈçºÎ²Ù×÷ÓëʹÓÃ.¹ØÓÚ²Ö¿âÄã¿ÉÒÔ¼òµ¥Àí½â³ÉÒ»¸öĿ¼£¬Õâ¸öĿ¼ÀïÃæµÄËùÓÐÎļþ¶¼¿ÉÒÔ±»Git¹ÜÀíÆðÀ´£¬Ã¿¸öÎļþµÄÐ޸ġ¢É¾³ý£¬Git¶¼Äܸú×Ù£¬ÒÔ±ãÈκÎʱ¿Ì¶¼¿ÉÒÔ×·×ÙÀúÊ·£¬»òÕßÔÚ½«À´Ä³¸öʱ¿Ì¿ÉÒÔ¡°»¹Ô­¡±.

Ê×ÏÈÎÒÃÇÀ´ÁË½â°æ±¾¿âµÄ´´½¨>>>>>>

²½ÖèÒ»:´´½¨Ò»¸ö°æ±¾¿â·Ç³£¼òµ¥£¬Ê×ÏÈ£¬Ñ¡ÔñÒ»¸öºÏÊʵĵط½£¬´´½¨Ò»¸ö¿ÕĿ¼.

²½Öè¶þ:ʹÓÃgit initÃüÁʹÕâ¸öĿ¼±ä³Égit¿ÉÒÔ¹ÜÀíµÄ²Ö¿â.

˲¼äGit¾Í°Ñ²Ö¿â½¨ºÃÁË£¬¶øÇÒ¸æËßÄãÊÇÒ»¸ö¿ÕµÄ²Ö¿â£¨empty Git repository£©£¬Ï¸ÐĵĶÁÕß¿ÉÒÔ·¢ÏÖµ±Ç°Ä¿Â¼Ï¶àÁËÒ»¸ö.gitµÄĿ¼£¬Õâ¸öĿ¼ÊÇGitÀ´¸ú×Ù¹ÜÀí°æ±¾¿âµÄ£¬Ã»ÊÂǧÍò²»ÒªÊÖ¶¯ÐÞ¸ÄÕâ¸öĿ¼ÀïÃæµÄÎļþ£¬²»È»¸ÄÂÒÁË£¬¾Í°ÑGit²Ö¿â¸øÆÆ»µÁË¡£Èç¹ûÄãûÓп´µ½.gitĿ¼£¬ÄÇÊÇÒòΪÕâ¸ö

Ŀ¼ĬÈÏÊÇÒþ²ØµÄ£¬ÓÃls -ahÃüÁî¾Í¿ÉÒÔ¿´¼û.

²½ÖèÈý:½«ÎļþÌí¼Ó½ø²Ö¿âÀïÃæ.

ÕâÀïûÓÐʲô¹Ì¶¨µÄ·½·¨£¬±ÈÈçÎÒ¾ÍÊÇÖ±½ÓÔÚ×ÀÃæ°ÑÎļþÍϽøÄ¿Â¼ÀïÃæ. windowsϵĿª·¢ÅóÓÑÕâÀï±£´æÄãµÄÎļþÄÚÈÝÍÆ¼öʹÓÃNotepad++Õâ¸öÈí¼þ±£´æ£¬Èç¹ûʹÓÃwindows×Ô´øµÄtxt¼Çʱ¾£¬µ±ÄãÍùÔ¶³Ì¿âÍÆË͵Äʱºò»áÓÐÒ»µãССµÄbug.ÏÖÔÚÎÒ´´½¨Ò»¸öÎļþ£¬Ëæ±ãдµãÄÚÈÝ£¬È»ºó±£´æµ½MTĿ¼ÖÐ.

ÎÒÃÇ¿ÉÒÔ¿´µ½£¬Ä¿Ç°ÎļþÒѾ­·Åµ½²Ö¿âÀïÃæÁË£¬¾Ù¸öÀý×Ó£¬ÎÒÊÇÒ»¸ö¿ìµÝÔ±£¬ÄãÈ¥±ðÈ˼ÒÀïËÍ¿ìµÝ£¬ÄãÊÇÖ±½Ó¿ìµÝÍùÃÅ¿ÚÒ»¶ª¾Í×ߣ¬»¹ÊǸø±ðÈË´ò¸öÕкôºóË͵½±ðÈËÊÖÀï? Èç¹ûÄãÊÇǰÕߣ¬ÄÇôÄã¿ÉÄÜҪʧҵÁË. µ±È»ÎÒÃǰÑÎļþÍÆËͽø²Ö¿âÒ²ÊÇͬÑùµÄµÀÀí£¬Ê×ÏÈÒª¸æËß²Ö¿âÎÒ¸øÄãËÍÀ´ÁËË­£¬×îºóÔÙ¸æËßËûÎÒÒѾ­°Ñ¶«Î÷½»¸¶¸øÄãÁË. ¾ÍÊǽÓÏÂÀ´ÕâÁ½¸öÃüÁî.

$ git add liang.txt //¸æËßMT²Ö¿â£¬ÎÒ¸øÄãÌí¼Ó¹ýÀ´ÁËÒ»¸öliang.txtÎļþ

$ git commit -m "¾ÙÀý" //°ÑLiang.txtÎļþÌá½»¸øMT¿â,¶øÇÒ¸øÕâ´ÎÌá½»×öÁË˵Ã÷ "¾ÙÀý"

ÕâÑùÎÒÃǾͳɹ¦µÄ½²ÎļþÍÆËÍÖÁMT²Ö¿âÖУ¬ÕâÀïÓм¸¸ö×¢ÒâµÄµØ·½£¬¼òµ¥½âÊÍÒ»ÏÂgit commitÃüÁ-mºóÃæÊäÈëµÄÊDZ¾´ÎÌá½»µÄ˵Ã÷£¬¿ÉÒÔÊäÈëÈÎÒâÄÚÈÝ£¬µ±È»×îºÃÊÇÓÐÒâÒåµÄ£¬ÕâÑùÄã¾ÍÄÜ´ÓÀúÊ·¼Ç¼Àï·½±ãµØÕÒµ½¸Ä¶¯¼Ç¼¡£ÏÓÂé·³²»ÏëÊäÈë-m "xxx"Ðв»ÐУ¿È·ÊµÓа취¿ÉÒÔÕâô¸É£¬µ«ÊÇÇ¿ÁÒ²»½¨ÒéÄãÕâô¸É£¬ÒòΪÊäÈë˵Ã÷¶Ô×Ô¼º¶Ô±ðÈËÔĶÁ¶¼ºÜÖØÒª.

ÆäʵÕâÀï¿Ï¶¨»áÓÐÈËÒÉ»ó£¬Íùgit²Ö¿âÀïÃæÍÆËÍΪʲôÊÇgit addºÍgit commitÁ½²½£¬Æäʵֱ½ÓÌá½»¸ø¿âÒ²¿ÉÒÔ°¡£¿

ÕâÀï¾ÍºÜ¼òµ¥ÁË£¬ÒòΪÄãÔÚgit commitÊÇÒ»´ÎÐÔÍÆËÍÍêÔÝ´æÇøµÄËùÓÐÎļþ£¬¶øgit addÊÇÿ´Î¶¼ÍùÔÝ´æÇøÀïÃæÍÆËÍÄÚÈÝ£¬ËùÒÔÄãÒ²¿ÉÒÔgit addºÜ¶à´ÎÖ®ºó£¬Ò»´ÎÐÔgit commitÕâ¶¼ÊÇ¿ÉÒÔµÄ. ¾ßÌåʲôÊÇÔÝ´æÇø¹À¼ÆÏÂÆª²©¿Í Äã¾ÍÃ÷°×ÁË.

git±¾µØ¿âµÄ¼àÊÓÆ÷

git±¾µØ¿â»¹ÓÐÒ»¸öÌØ±ðÇ¿´óµÄ¹¦ÄÜ£¬ÄǾÍÊÇËû¿ÉÒÔ¼ìÑé³öÄãÄÇÀï·¢ÉúÁ˸ü¸Ä£¬²¢ÇÒÕÒµ½¸ü¸ÄÁËʲô? ½ÓÏÂÀ´ÎÒÀ´ÑÝʾЧ¹û.

¸Õ¸ÕÎÒ´´½¨ÁËÒ»¸öliang.txt£¬²¢ÇÒ°ÑËüÍÆËÍgitµÄ±¾µØ¿âÀïÃæ,ĿǰËüµÄÄÚÈݾÍÊÇ my name is liangliang

½ÓÏÂÀ´ÎÒÔÚÔ´Îļþµ±ÖжÔliang.txt½øÐÐÐ޸ģ¬ Ìí¼ÓÒ»¾ä I am programmer

ÎÒÃÇÿ´ÎÏë°ÑÎļþÍÆË͵½git±¾µØ¿â֮ǰǰ£¬ÏȼìÑéÒ»ÏÂ×Ô¼ºÄǸöÎļþ¸ü¸ÄÁËÄÚÈÝ£¬ÎÒÃÇ¿ÉÒÔʹÓÃÒ»ÌõÖ¸Áî½øÐÐ:

$ git status

Ëü¿ÉÒÔ¼ìÑé³öÄãÔÚÌá½»Îļþµ½±¾µØ¿â֮ǰ£¬ÄÇЩÎļþ±»Ð޸Ĺý£¬Èç¹û±»Ð޸Ĺý¾Í»á±»±êʶ³ö£¬ÈçÏÂͼËùʾ.

ºÃÎÒÏÖÔÚÖªµÀÀ²ÄǸöÎļþ±»ÐÞ¸ÄÁË£¬ÏÖÔÚÎÒÍüÁËÎÒÐÞ¸ÄÕâ¸öÎļþÀïÃæµÄʲôÄÚÈÝÔõô°ì?

û¹ØÏµÎÒÃÇ»¹Óа취£¬ÓÐÒ»ÌõÖ¸Áî¿ÉÒÔÏÔʾ³öÄãÐ޸ĵÄÄÚÈÝ:

$ git diff

ÏÖÔÚÎÒÃDz¶àÁ˽âÕ⼸¸ö¹¦ÄÜÁË£¬½ÓÏÂÀ´ÎÒ¶Ô¸Õ¸ÕµÄËùÓÐÄÚÈݽøÐÐgit commit£¬È»ºóÎÒÃÇÔÙÔËÐÐÒ»´Îgit status,¿´ÏÂͼµÄ½á¹û:

Git¸æËßÎÒÃǵ±Ç°Ã»ÓÐÐèÒªÌá½»µÄÐ޸쬶øÇÒ£¬¹¤×÷Ŀ¼ÊǸɾ»µÄ. Õ⼸¸öÃüÁîºÜÖØÒªÒ»¶¨ÒªÑ§»áÊìÁ·ÔËÓÃ.

GIT±¾µØ¿âµÄʱ¹â»ú

ÎÒÃÇÖªµÀÏÖʵÉú»îÊDz»»áÔÊÐíÄã»Øµ½¹ýÈ¥»òÕßÌøµ½Î´À´È¥,µ«ÊÇÎÒÃǵÄgitÓÖ¿ÉÒÔ£¡£¡ ŒÅ²»ŒÅ£¨ÊÖ¶¯Î¢Ð¦£©ºÃÁ˺ÃÁË£¬Æäʵ¾ÍÊDZÈÈçÄãÕâ¸ö°æ±¾Ìá½»µ½±¾µØ¿âÁË£¬µ«ÊÇ·¢ÏÖÄãµÄÕâ¸ö°æ±¾Æäʵ»¹²»ÈçÉÏÒ»¸ö°æ±¾£¬Õâ¾ÍÓеãºï×Ó°áÓñÃ׵ĹÊʵÄζµÀÁË£¬µ«ÊÇÕâ´ÎÎÒÃǵĺï×ÓÊÇÐÒÔ˵ģ¬ÒòΪËûÓÐgitÕâ¸öÇ¿´óµÄ¹¤¾ß£¬ºÃÁËÑÔ¹éÕý´«£¬ÎÒÃÇ¿´¿´gitµÄ°æ±¾»ØÍËÊÇÒ»¸öʲôÑù×Ó?

µ±È»ÁË£¬ÔÚʵ¼Ê¹¤×÷ÖУ¬ÎÒÃÇÄÔ×ÓÀïÔõô¿ÉÄܼǵÃÒ»¸ö¼¸Ç§ÐеÄÎļþÿ´Î¶¼¸ÄÁËʲôÄÚÈÝ£¬²»È»Òª°æ±¾¿ØÖÆÏµÍ³¸Éʲô¡£°æ±¾¿ØÖÆÏµÍ³¿Ï¶¨ÓÐij¸öÃüÁî¿ÉÒÔ¸æËßÎÒÃÇÀúÊ·¼Ç¼£¬ÔÚGitÖУ¬ÎÒÃÇÓÃgit logÃüÁî²é¿´£¬¾Ù¸öÀý×ÓÎÒÃÇǰ¼¸´ÎµÄÐÞ¸Äliangliang.txtÎļþ£¬ÎÒÃÇÀ´¿´¿´¼Ç¼°É~

$ git log

Äã¿´¿´ÎÒÃÇÿ´ÎÐ޸ĵı¸×¢ÎÒÃǶ¼¿´µÃÒ»Çå¶þ³þ£¬Ã»Ã«²¡°É~ ËüÏÔʾµÄ˳Ðò·Ö±ðÊÇ´Ó½øµ½Ô¶,"¾ÙÀý" "add programmer" "eat"

Èç¹ûÄã¾õµÃÏûÏ¢Óеã¶à£¬¿´µ½Äã·³ÄÇôºÜ¼òµ¥£¬Ê¹ÓÃÕâÒ»ÌõÖ¸Áî:

$ git log --pretty=oneline

½ÓÏÂÀ´£¬ÎÒÀ´ËµÒ»ÏÂgitΪʲô¿ÉÒÔ°æ±¾»ØÍË?? git¼Ç¼һ¸ö¿âµÄ°æ±¾µÄµ×²ãʵÏÖÊÇʲô??

GitµÄ°æ±¾»ØÍËËٶȷdz£¿ì£¬ÒòΪGitÔÚÄÚ²¿ÓиöÖ¸Ïòµ±Ç°°æ±¾µÄHEADÖ¸Õ룬µ±Äã»ØÍ˰汾µÄʱºò£¬Git½ö½öÊǰÑHEAD´ÓÖ¸Ïò"add programmer".ÔÚͼÖпÉÒÔ¿´µ½Ã¿Ò»¸ö°æ±¾¶¼ÓÐ×Ô¼ºµÄ°æ±¾ºÅ£¬¾ÍÊÇÿ¸ö°æ±¾ÏÂÃæÄǸö½ð»ÆÉ«Ò»´®×Ö·û£¬Ò²¾ÍÊÇÎÒÃÇʹÓÃgit log Ö¸ÁîÕÒµ½µÄ.ÕâЩ°æ±¾ºÅ¾ÍÊǸæËßHEADÖ¸Õë¸Ã°æ±¾µÄλÖã¬È»ºóÈÃHEADÖ¸ÕëÖ¸Ïò¹ýÈ¥,ÕâÑù¾ÍʵÏÖ°æ±¾»ØÍËÁË. Èç¹ûÄã»ØÍËÖ®ºóÏë»Øµ½Î´À´£¬ÕâʱºòÖ»ÐèÒª½«"eat"µÄ°æ±¾ºÅ¸æËßÎÒÃǵÄHEADÖ¸Õë. ½ÓÏÂÀ´ÎÒÃǾÍÈÏʶһÏ£¬¿ÉÒÔ»ØÍ˰汾µÄÖ¸Áî. (Ö¸ÁîÄÚ²¿»¹Êǽ«°æ±¾ºÅ¸æËßHEADÖ¸Õ룬Àí½âÕâÀïµÄÔ­Àí¾Í¿ÉÒÔÄØ).

ÏÖÔÚÎÒÃÇÏë»Øµ½"add programmer"°æ±¾£¬ÎÒÃÇ¿ÉÒÔʹÓÃÏÂÃæÕâÌõÖ¸Áî:

$ git reset --hard HEAD^

×¢ÒâÕâÀïµÄHEADºóÃæµÄÕâ¸ö^£¬Èç¹ûÄãÏë»Øµ½ÉÏÉÏÒ»¸ö°æ±¾ÄÇÄã¿ÉÒÔHEAD^^,µ«Êǻص½Ç°50¸ö°æ±¾µÄʱºò¾Í·Ç³£·±ËöÁË£¬ÎÒÃÇ»¹¿ÉÒÔÕâÑù: HEAD~50

ÏÖÔÚÎÒÃǼÌÐøÊµÏÖÎÒÃǻص½ÉÏÒ»¸ö°æ±¾£º

ÎÒÃÇ·¢ÏÖÎÒÃDz»½ö»ØÈ¥ÁË£¬"eat"Õâ¸ö°æ±¾Ò²ÔÚÀúÊ·¼Ç¼Öб»Ä¨µôÁË. ÎÒܳ£¡ÀÏ×ÓÖ»ÊǻعýÈ¥¿´Ò»¸ö¶«Î÷,È»ºó»¹ÓлØÈ¥Äػز»È¥ÁËÔõô°ì(ÊÖ¶¯Î¢Ð¦)£¿

ÕâÀï²»Óõ«ÊÇ£¬ÎÒÃÇÊÇ¿ÉÒÔÍì¾ÈµÄ£¬Ö»ÒªÄãµÄÃüÁî´°¿ÚûÓйأ¬ÄãÍùÉÏÀ­ÕÒµ½eatµÄ°æ±¾ºÅ£¬°æ±¾ºÅÊÇʲô£¿ ·Ï»°£¬¸Õ¸Õ²»ÊǶ¼ËµÁ˾ÍÊÇÄǸö½ð»ÆÉ«µÄ×Ö·û´®. ÏÖÔÚÄõ½eatµÄ°æ±¾ºÅÎÒÃÇʹÓÃÒ»¸öÖ¸Áî:
$ git reset --hard 02fdf5e

ÎûÎûÎû£¬ÎÒÃÇÓÖ»ØÀ´ÁË. ÕâÀï°æ±¾ºÅ²»ÓÃÊäÈ«µÄ£¬Ò»°ãÖ»Êäǰ7λ¾ÍÄÜÕÒµ½£¬Äã²»ÄÜ͵ÀÁÖ»ÊäÁ½Î»£¬ÕâÑùgit»á¸øÄãÕÒ³öÀ´Ò»´ó¶ÑÄÚÈݵÄ.

À´À´À´£¬»¹Óиü²»ÐÒµÄÎÊÌ⣬Èç¹ûÎÒÃǻص½¹ýÈ¥ÁË£¬²¢ÇÒÎÒÃÇ»¹¹Ø±ÕÁËÃüÁî´°¿Ú£¬Ï´δò¿ªÉ¶¶¼Ã»ÓÐÕâ¿ÉÔõô°ì£¿ û¹ØÏµ£¬ÎÒÃǵÄgitÊÇÍòÄܵģ¡£¡

gitÄÚ²¿ÓÐÒ»¸öÉúËÀ²¾µÄ¶«Î÷£¬Ò»ÇÐÒ»ÇÐËüÒ»Ö±ÔÚ¼ÇÔØ£¬ÎÒÃÇÀ´¿´¿´ÈçºÎµ÷ÓóöÕâ¸öÖÕ¼«´óÕУ¡

$ git reflog

×ܽá

ÎÒÃÇѧϰÍêÁË£¬git±¾µØ¿â²Ù×÷µÄÉϰë½ÚÄÚÈÝÁË£¬Ò»¶¨ÒªÊìÁ·ÕâЩÃüÁÒòÎªÕæµÄÕæµÄÕæµÄºÜʵÓÃ.

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

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

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

ÅäÖùÜÀíʵ¼ù
ÅäÖùÜÀí·½·¨¡¢¹¤¾ßÓëÓ¦ÓÃ
¶à²ã´Î¼¯³ÉÅäÖùÜÀí
²úÆ··¢²¼¹ÜÀí