ÏêϸÏÈÈÝÔõÑùÔÚgitÖÐɾ³ýÎļþ
ÔÚʹÓÃgit¾ÙÐа汾¿ØÖÆʱ£¬ÎÒÃÇ¿ÉÄÜ»áÓöµ½ÐèҪɾ³ýÎļþµÄÇéÐΡ£¿ÉÊÇ£¬gitɾ³ýÎļþ²¢²»ÏñͨË×µÄÎļþɾ³ýÄÇÑù¼òÆÓ¡£½ÓÏÂÀ´£¬±¾ÎĽ«»áÏêϸÏÈÈÝÔõÑùÔÚgitÖÐɾ³ýÎļþ¡£
´ÓgitÖÐɾ³ýÎļþ
µ±ÎÒÃÇÐèÒªÔÚgitÖÐɾ³ýÎļþʱ£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
git rm file_name
µÇ¼ºó¸´ÖÆ
ÕâÌõÏÂÁî»á½«Îļþ´ÓgitÔÝ´æÇøºÍÊÂÇéÇøÖÐɾ³ý£¬Í¬Ê±Ò²»á½«¸ÃÎļþµÄɾ³ý²Ù×÷Ìí¼Óµ½ÔÝ´æÇø£¬²¢Ìá½»µ½ÍâµØ¿ÍÕ»¡£ÈôÊÇÏëÒª½«¸ÃÎļþ´ÓÍâµØ¿ÍÕ»ÖÐɾ³ý£¬ÔòÐèҪʹÓÃÒÔÏÂÏÂÁ
git commit -m "delete file_name"
µÇ¼ºó¸´ÖÆ
Õâ»áÌá½»Ò»¸ö°üÀ¨¸ÃÎļþɾ³ý²Ù×÷µÄcommit¡£ÕâÌõÏÂÁîµÄ×÷ÓÃÊǽ«¸ÃÎļþµÄɾ³ý²Ù×÷Ìí¼Óµ½gitµÄ°æ±¾¿ØÖÆÀúÊ·ÖС£µ±ÎÒÃÇÐèÒª½«ÕâÌõɾ³ý²Ù×÷ͬ²½µ½ÔƶËʱ£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
git push
µÇ¼ºó¸´ÖÆ
»Ö¸´ÒÑɾ³ýµÄÎļþ
ÓÐʱ¼äÎÒÃÇ¿ÉÄÜ»áÐèÒª»Ö¸´ÒѾ±»É¾³ýµÄÎļþ£¬ÕâʱÎÒÃÇ¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
git checkout commit_id file_name
µÇ¼ºó¸´ÖÆ
ÆäÖУ¬commit_idÊÇÐèÒª»Ö¸´µÄÎļþ±»É¾³ýÇ°µÄcommitºÅ£¬file_nameÊÇÐèÒª»Ö¸´µÄÎļþÃû¡£¸ÃÏÂÁ»á´ÓÖ¸¶¨µÄcommitÖлָ´¸ÃÎļþ£¬²¢½«ÆäдÈ뵽Ŀ½ñµÄÊÂÇéĿ¼ÖС£ÈôÊÇÎÒÃÇÏëÒª½«¸ÃÎļþµÄ»Ö¸´²Ù×÷Ìí¼Óµ½ÍâµØ¿ÍÕ»ÖУ¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
git add file_name git commit -m "restore file_name"
µÇ¼ºó¸´ÖÆ
Õâ»á½«¸ÃÎļþµÄ»Ö¸´²Ù×÷Ìí¼Óµ½ÔÝ´æÇøºÍÍâµØ¿ÍÕ»ÖС£
ºöÂÔ±»É¾³ýµÄÎļþ
ÓÐʱ¼äÎÒÃÇ¿ÉÄܲ¢²»Ï뽫±»É¾³ýµÄÎļþÌá½»µ½ÍâµØ¿ÍÕ»ÖУ¬¿ÉÊÇgitĬÈÏÇéÐÎÏ»Ὣ¸Ãɾ³ý²Ù×÷×÷Ϊһ´ÎÌá½»Ìá½»µ½ÍâµØ¿ÍÕ»¡£ÎªÁ˺öÂÔÕâЩ±»É¾³ýµÄÎļþ£¬ÎÒÃÇ¿ÉÒÔʹÓÃ.gitignoreÎļþ¡£
.gitignoreÎļþÊÇÒ»¸öÓÃÓÚÖ¸¶¨²»ÐèÒªÌá½»µ½git°æ±¾¿ØÖƵÄÎļþ»òĿ¼ÁбíµÄÌØÊâÎļþ¡£ÔÚ¸ÃÎļþÖÐÌí¼ÓÐèÒªºöÂÔµÄÎļþÃû³Æ»òͨÅä·û¼´¿É¡£ÀýÈ磬ÈôÊÇÎÒÏëÒªºöÂÔËùÓеÄlogÎļþºÍtmpĿ¼£¬¿ÉÒÔÔÚ.gitignoreÎļþÖÐÌí¼ÓÒÔÏÂÄÚÈÝ£º
*.log tmp/
µÇ¼ºó¸´ÖÆ
ÕâÑù£¬µ±ÎÒÃÇɾ³ýÁËÒ»¸ölogÎļþ»ò/tmpĿ¼ʱ£¬git¾Í»á×Ô¶¯ºöÂÔ¸Ãɾ³ý²Ù×÷£¬²¢²»»áÌá½»µ½ÍâµØ¿ÍÕ»ÖС£
×ܽá
ÔÚgitÖÐɾ³ýÎļþ²¢²»ÊÇÒ»¼þ¼òÆÓµÄÊÂÇé¡£³ýÁËÐèҪɾ³ý¸ÃÎļþµÄÔÝ´æÇøºÍÊÂÇéÇøÍ⣬»¹ÐèÒª½«¸Ãɾ³ý²Ù×÷Ìí¼Óµ½ÍâµØ¿ÍÕ»£¬²¢½«ÆäÌá½»µ½Ôƶˡ£ÈôÊÇÏëÒª»Ö¸´ÒÑɾ³ýµÄÎļþ£¬ÔòÐèҪƾ֤commitºÅ¾ÙÐл¹Ô¡£±ðµÄ£¬ÎªÁ˺öÂÔһЩ²»ÐëÒªÌá½»µÄ±»É¾³ýµÄÎļþ£¬¿ÉÒÔÔÚ.gitignoreÖоÙÐÐÉèÖá£Ï£Íû±¾ÎÄ¿ÉÒÔ×ÊÖú¸÷È˸üºÃµØÃ÷È·ÔÚgitÖÐɾ³ýÎļþ¡£
ÒÔÉϾÍÊÇÏêϸÏÈÈÝÔõÑùÔÚgitÖÐɾ³ýÎļþµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡