gitÔõô×÷·ÏÎļþÐ޸ģ¿Ôõô×÷·ÏÌá½»£¿
×÷Ϊ¿ª·¢Ö°Ô±£¬Ê¹Óà git ÊDZز»¿ÉÉٵġ£ÔÚ git ÖУ¬¾³£»áÓöµ½ÐèÒª×÷·ÏÎļþµÄÐ޸ĻòÕß×÷·ÏÌá½»µÄÇéÐΡ£ËäÈ»Äã¿ÉÒÔͨ¹ýÊÖ¶¯¸ü¸ÄÎļþ»òÕßʹÓÃÏÂÁîÐÐÀ´×÷·ÏÎļþÐ޸ģ¬¿ÉÊÇ git ΪÎÒÃÇÌṩÁËһЩºÜÊÇÀû±ãµÄ·½·¨À´´¦ÀíÕâЩÇéÐΡ£
±¾ÎĽ«ÏêϸÏÈÈÝÔõÑùʹÓà Git ×÷·ÏÎļþÐ޸ģ¬ÒÔ¼°ÔõÑù×÷·ÏÌá½»¡£
Git ×÷·ÏÎļþÐÞ¸Ä
ÇéÐÎÒ»£ºÎļþδÌí¼Óµ½ÔÝ´æÇø
ÈôÊÇÄã¶ÔÒ»¸öÎļþ×öÁËÐ޸ģ¬µ«»¹Î´½«ÆäÌí¼Óµ½ Git µÄÔÝ´æÇø£¬ÄÇô×÷·ÏÐ޸ĺÜÊÇÈÝÒס£Äã¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·ÏÎļþµÄÐ޸ģº
git checkout -- <file></file>
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁî»á½«Îļþ»Ö¸´µ½×î½üÒ»´ÎÌá½»µÄ״̬¡£ÀýÈ磬ÈôÊÇÄãÕýÔÚ±à¼Ò»¸öÃûΪ test.txt µÄÎļþ£¬²¢ÇÒÒѾ¶ÔÆä¾ÙÐÐÁËÐ޸ģ¬ÄÇô¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·ÏÐ޸ģº
git checkout -- test.txt
µÇ¼ºó¸´ÖÆ
ÕâÑù¾Í¿ÉÒÔ½« test.txt Îļþ»Ö¸´µ½×î½üÒ»´ÎÌύʱµÄ״̬¡£
ÇéÐζþ£ºÎļþÒÑÌí¼Óµ½ÔÝ´æÇø
ÈôÊÇÄãÒѾ½«ÎļþÌí¼Óµ½ÁË Git µÄÔÝ´æÇø£¬ÄÇô×÷·ÏÐÞ¸ÄÒªÉÔ΢ƶÀ§Ò»Ð©¡£ÄãÐèҪʹÓÃÒÔÏÂÁ½¸öÏÂÁ
git reset HEAD git checkout -- <file></file>
µÇ¼ºó¸´ÖÆ
µÚÒ»¸öÏÂÁî»á½«Îļþ´Ó Git µÄÔÝ´æÇøÒƳý£¬µÚ¶þ¸öÏÂÁîÔòÊǽ«Îļþ»Ö¸´µ½×î½üÒ»´ÎÌá½»µÄ״̬¡£ÀýÈ磬ÈôÊÇÄãÒѾ½« test.txt ÎļþÌí¼Óµ½ÁË Git µÄÔÝ´æÇø£¬²¢¶ÔÆä¾ÙÐÐÁËÐ޸ģ¬ÄÇô¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·ÏÐ޸ģº
git reset HEAD test.txt git checkout -- test.txt
µÇ¼ºó¸´ÖÆ
ÕâÁ½ÌõÏÂÁîµÄ˳ÐòºÜÊÇÖ÷Òª¡£ÈôÊÇÏÈʹÓà git checkout — test.txt ÏÂÁÄÇô Git »á½«Îļþ»Ö¸´µ½×î½üÒ»´ÎÌá½»µÄ״̬£¬ºöÂÔÄã֮ǰÔÚÔÝ´æÇøËù×ö³öµÄÐ޸ġ£
ÇéÐÎÈý£ºÎļþÒÑÌá½»
ÈôÊÇÄãÒѾ½«Ò»¸öÎļþÌá½»µ½ÁË Git£¬ÄÇô×÷·ÏÐ޸ľÍÐèÒªÓõ½ git revert ÏÂÁîÁË¡£Õâ¸öÏÂÁî»á½¨ÉèÒ»¸öеÄÌá½»£¬¸ÃÌá½»»á×÷·Ï֮ǰµÄÌá½»¡£ÀýÈ磬ÈôÊÇÄãÔÚ master ·ÖÖ§ÉÏÌá½»ÁËÒ»¸öÃûΪ test.txt µÄÎļþ£¬²¢¶ÔÆä¾ÙÐÐÁËÐ޸ģ¬ÄÇô¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·Ï¸Ã´ÎÌá½»£º
git revert HEAD
µÇ¼ºó¸´ÖÆ
ÕâÌõÏÂÁî»á·¿ªÒ»¸ö±à¼Æ÷£¬ÈÃÄãÊäÈë¹ØÓÚÕâ¸öÌá½»µÄ×÷·ÏÐÅÏ¢¡£ÈôÊÇÄãÏëÖ±½ÓÌá½»£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
git revert --no-edit HEAD
µÇ¼ºó¸´ÖÆ
ÕâÑù¾Í»áÖ±½ÓÌá½»×÷·Ï¡£
×÷·ÏÌá½»
ÓÐʱ¼ä£¬Äã»áÒâʶµ½ÄãÌá½»µÄ´úÂë±£´æÎÊÌ⣬»òÕßÄã²»Ï뽫ÆäÌí¼Óµ½°æ±¾¿ØÖÆÖС£ÔÚÕâÖÖÇéÐÎÏ£¬ÄãÐèÒª×÷·ÏÌá½»¡£
ÇéÐÎÒ»£º»¹Î´ÍÆËÍÖÁÔ¶³Ì¿ÍÕ»
ÈôÊÇÄãÔÚÍâµØÌá½»ÁË´úÂ룬µ«»¹Î´½«ÆäÍÆËÍÖÁÔ¶³Ì¿ÍÕ»£¬ÄÇô¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·ÏÌá½»£º
git reset HEAD~1
µÇ¼ºó¸´ÖÆ
ÕâÌõÏÂÁî»á½«×î½üµÄÒ»´ÎÌá½»×÷·Ï£¬²¢½«´úÂë»Ö¸´µ½ÉÏÒ»´ÎÌá½»µÄ״̬¡£
ÇéÐζþ£ºÒѾÍÆËÍÖÁÔ¶³Ì¿ÍÕ»
ÈôÊÇÄãÒѾ½«´úÂëÍÆËÍÖÁÔ¶³Ì¿ÍÕ»£¬ÄÇô¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´×÷·ÏÌá½»£º
git revert <commit_id></commit_id>
µÇ¼ºó¸´ÖÆ
ÆäÖУ¬ ÊÇÄãÏëÒª×÷·ÏµÄÌá½»µÄ±êʶ·û¡£Õâ¸öÏÂÁî»á½¨ÉèÒ»¸öеÄÌá½»£¬²¢ÔÚÆäÖÐ×÷·ÏÖ¸¶¨µÄÌá½»¡£
½áÂÛ
Git ÌṩÁ˺ÜÊÇÀû±ãµÄ·½·¨À´×÷·ÏÎļþµÄÐ޸ĺÍ×÷·ÏÌá½»¡£Í¨¹ý±¾ÎÄËùÏÈÈݵÄÏÂÁÄã¿ÉÒÔÇáËɵش¦ÀíÕâЩÇéÐΡ£ËäÈ»£¬ÔÚʹÓÃÕâЩÏÂÁîʱ£¬ÎÒÃÇÒ²ÐèÒªºÜÊÇСÐÄ£¬ÒÔÃâÎó²Ù×÷¡£
ÒÔÉϾÍÊÇgitÔõô×÷·ÏÎļþÐ޸ģ¿Ôõô×÷·ÏÌá½»£¿µÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡