·ÖÏígitµÄÓ÷¨´óÈ«
gitÊÇÏÖÔÚ×îÊ¢Ðеİ汾¿ØÖÆϵͳ֮һ£¬Ëü¿ÉÒÔ×ÊÖú¿ª·¢Õ߸üºÃµØÖÎÀí´úÂ룬²¢ÐͬÊÂÇé¡£ÒÔÏÂÊÇgitµÄÓ÷¨´óÈ«£¬×ÊÖúÄú¸üºÃµØÕÆÎÕgit¡£
×°ÖÃgit
Ê×ÏÈ£¬ÐèÒªÔÚÅÌËã»úÉÏ×°ÖÃgit¡£¿ÉÒÔµ½git¹ÙÍø£¨https://git-scm.com/£©ÏÂÔØ×°Öðü£¬Æ¾Ö¤ÌáÐÑ×°Öü´¿É¡£
½¨Éè¿ÍÕ»
ÔÚgitÖУ¬¿ÍÕ»ÊÇ´æ·Å´úÂëµÄµØ·½¡£¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁîÔÚÍâµØ½¨ÉèÒ»¸öеĿÍÕ»£º
$ git init
µÇ¼ºó¸´ÖÆ
ÔÚ¸ÃĿ¼Ï¾ͻ᷺ÆðÒ»¸ö.gitÎļþ¼Ð£¬ÌåÏÖÍâµØ¿ÍÕ»ÒѾ½¨ÉèÀֳɡ£
Ìí¼ÓºÍÌá½»Îļþ
½«´úÂëÌí¼Óµ½git¿ÍÕ»ÖÐÐèÒªÁ½¸ö°ì·¨£¬»®·ÖÊÇÌí¼ÓºÍÌá½»¡£
ͨ¹ýÒÔÏÂÏÂÁîÌí¼ÓÎļþ£º
$ git add filename
µÇ¼ºó¸´ÖÆ
Ìá½»Îļþ£º
$ git commit -m "commit message"
µÇ¼ºó¸´ÖÆ
Éó²é¿ÍÕ»µÄ״̬
¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁîÉó²é¿ÍÕ»µÄ״̬£º
$ git status
µÇ¼ºó¸´ÖÆ
ͨ¹ýÕâ¸öÏÂÁî¿ÉÒÔ¿´µ½ÄÄЩÎļþ±»Ð޸ģ¬ÄÄЩÎļþ±»Ìí¼ÓµÈµÈ¡£
Éó²éÀúÊ·¼Í¼
¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁîÉó²égit¿ÍÕ»µÄÀúÊ·¼Í¼£º
$ git log
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁî»áÁгöËùÓÐÌá½»µÄ¼Í¼£¬°üÀ¨Ìá½»µÄʱ¼ä¡¢×÷Õß¡¢Ìá½»µÄÐÂÎŵȵȡ£
»Ø¹öµ½Ä³¸ö°æ±¾
ÓÐʱ¼äÎÒÃÇÐèÒª»Ø¹öµ½Ö®Ç°µÄij¸ö°æ±¾£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
$ git reset --hard °æ±¾ºÅ
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁî¿ÉÒÔ×ÊÖúÎÒÃǻعöµ½Ö®Ç°µÄij¸ö°æ±¾£¬°æ±¾ºÅ¿ÉÒÔͨ¹ýgit logÏÂÁî»ñÈ¡¡£
·ÖÖ§ÖÎÀí
ÔÚgitÖпÉÒÔ½¨Éè¶à¸ö·ÖÖ§£¬Ã¿¸ö·ÖÖ§¶¼ÊÇ×ÔÁ¦µÄ£¬¿ÉÒÔÓÃÀ´´¦Àí²î±ðµÄʹÃü»ò¹¦Ð§¡£Í¨¹ýÒÔÏÂÏÂÁÉè·ÖÖ§£º
$ git branch ·ÖÖ§Ãû
µÇ¼ºó¸´ÖÆ
Çл»µ½·ÖÖ§£º
$ git checkout ·ÖÖ§Ãû
µÇ¼ºó¸´ÖÆ
µ±ÎÒÃÇÍê³ÉÁËij¸öʹÃüÖ®ºó£¬¿ÉÒÔ½«·ÖÖ§ºÏ²¢µ½Ö÷·ÖÖ§ÉÏ£º
$ git merge ·ÖÖ§Ãû
µÇ¼ºó¸´ÖÆ
ʹÓÃgithub
GitHub ÊÇÒ»¸ö»ùÓÚ Git µÄ´úÂëÍйÜƽ̨£¬¿ÉÒÔÃâ·Ñ½¨É蹫¹²µÄ´úÂë¿ÍÕ»£¬²¢ÓëÈ«Çò¿ª·¢Õß·ÖÏí´úÂ룬Ҳ¿ÉÒÔ˽Óеķ½·¨ÔËÓÃ×Ô¼ºµÄÍŶӿª·¢ÖС£
¿ÉÒÔÔÚGitHubÉϽ¨ÉèÒ»¸örepository£¬È»ºó½«ÍâµØµÄ´úÂëÍÆË͵½GitHubÉÏ£º
$ git remote add origin <github> $ git push -u origin master</github>
µÇ¼ºó¸´ÖÆ
ÆäËûÏÂÁî
³ýÁËÉÏÊöÏÂÁîÖ®Í⣬gitÉÐÓÐÐí¶àÆäËû³£ÓõÄÏÂÁÀýÈ磺
git diff£º½ÏÁ¿Á½¸ö°æ±¾Ö®¼äµÄ²î±ð£»
git clone£º¿Ë¡һ¸öÔ¶³Ì¿ÍÕ»µ½ÍâµØ£»
git pull£º´ÓÔ¶³Ì¿ÍÕ»¸üдúÂëµ½ÍâµØ£»
git push£º½«ÍâµØ´úÂëÍÆË͵½Ô¶³Ì¿ÍÕ»¡£
×ÜÌåÀ´Ëµ£¬GitÊÇÒ»¸öºÜÊÇÇ¿Ê¢µÄ°æ±¾¿ØÖÆϵͳ£¬¿ÉÒÔ×ÊÖúÎÒÃǸüºÃµØÖÎÀí´úÂ롣ͨ¹ýÕÆÎÕÒÔÉÏÏÂÁ¿ÉÒÔÔ½·¢¸ßЧµØʹÓÃgit£¬Ìá¸ß×Ô¼ºµÄ¿ª·¢Ë®Æ½¡£
ÒÔÉϾÍÊÇ·ÖÏígitµÄÓ÷¨´óÈ«µÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡