Ò». Git½éÉÜ
1.·Ö²¼Ê½ : Git°æ±¾¿ØÖÆÏµÍ³ÊÇÒ»¸ö·Ö²¼Ê½µÄϵͳ, ÊÇÓÃÀ´±£´æ¹¤³ÌÔ´´úÂëÀúʷ״̬µÄÃüÁîÐй¤¾ß;
2.±£´æµã : GitµÄ±£´æµã¿ÉÒÔ×·×ÙÔ´ÂëÖеÄÎļþ, ²¢Äܵõ½Ä³Ò»¸öʱ¼äµãÉϵÄÕû¸ö¹¤³ÌÏîÄ¿¶î״̬;
¿ÉÒÔÔڸñ£´æµã½«¶àÈËÌá½»µÄÔ´ÂëºÏ²¢, Ò²¿ÉÒÔ»áÍ˵½Ä³Ò»¸ö±£´æµãÉÏ;
3.GitÀëÏß²Ù×÷ÐÔ :Git¿ÉÒÔÀëÏß½øÐдúÂëÌá½», Òò´ËËü³ÆµÃÉÏÊÇÍêÈ«µÄ·Ö²¼Ê½´¦Àí,
GitËùÓеIJÙ×÷²»ÐèÒªÔÚÏß½øÐÐ; ÕâÒâζ×ÅGitµÄËÙ¶ÈÒª±ÈSVNµÈ¹¤¾ß¿ìµÃ¶à, ÒòΪSVNµÈ¹¤¾ßÐèÒªÔÚÏßʱ²ÅÄܲÙ×÷,
Èç¹ûÍøÂç»·¾³²»ºÃ, Ìá½»´úÂë»á±äµÃ·Ç³£»ºÂý;
4.Git»ùÓÚ¿ìÕÕ : SVNµÈÀÏʽ°æ±¾¿ØÖƹ¤¾ßÊǽ«Ìá½»µã±£´æ³É²¹¶¡Îļþ,
GitÌá½»Êǽ«Ìá½»µãÖ¸ÏòÌύʱµÄÏîÄ¿¿ìÕÕ, Ìá½»µÄ¶«Î÷°üº¬Ò»Ð©ÔªÊý¾Ý(×÷Õß, ÈÕÆÚ, GPGµÈ);
5.GitµÄ·ÖÖ§ºÍºÏ²¢ : ·ÖÖ§Ä£ÐÍÊÇGit×îÏÔÖøµÄÌØµã, ÒòΪÕâ¸Ä±äÁË¿ª·¢ÕߵĿª·¢Ä£Ê½,
SVNµÈ°æ±¾¿ØÖƹ¤¾ß½«Ã¿¸ö·ÖÖ§¶¼Òª·ÅÔÚ²»Í¬µÄĿ¼ÖÐ, Git¿ÉÒÔÔÚͬһ¸öĿ¼ÖÐÇл»²»Í¬µÄ·ÖÖ§;
6.·ÖÖ§¼´Ê±ÐÔ : ´´½¨ºÍÇл»·ÖÖ§¼¸ºõÊÇͬʱ½øÐеÄ, Óû§¿ÉÒÔÉÏ´«Ò»²¿·Ö·ÖÖ§,
ÁíÍâÒ»²¿·Ö·ÖÖ§¿ÉÒÔÒþ²ØÔÚ±¾µØ, ²»±Ø½«ËùÓеķÖÖ§¶¼ÉÏ´«µ½GitHubÖÐÈ¥;
7.·ÖÖ§Áé»îÐÔ : Óû§¿ÉÒÔËæÊ± ´´½¨ ºÏ²¢ ɾ³ý·ÖÖ§, ¶àÈËʵÏÖ²»Í¬µÄ¹¦ÄÜ,
¿ÉÒÔ´´½¨¶à¸ö·ÖÖ§½øÐпª·¢, Ö®ºó½øÐзÖÖ§ºÏ²¢, ÕâÖÖ·½Ê½Ê¹¿ª·¢±äµÃ¿ìËÙ, ¼òµ¥, °²È«;
¶þ. GitͨÓÿͻ§¶Ë(msysgit)
1. ÏÂÔØGit¿Í»§¶Ë
Git¿Í»§¶ËÏÂÔØµØÖ· :https://code.google.com/p/msysgit/downloads/list
½«µØÖ·¸´ÖƵ½ä¯ÀÀÆ÷À¸¼´¿ÉÏÂÔØ.
2. °²×°Git¿Í»§¶Ë
»¶Ó½çÃæ : Ö±½ÓÏÂÒ»²½;

ÐÒé : ±ØÐë½ÓÊÜ;

°²×°Î»Öà : Ô¤Áô100M¿Õ¼ä, ×Ô¶¨Ò尲װλÖÃ;

Ñ¡Ôñ°²×°×é¼þ :Ò²¿ÉÒÔĬÈÏÑ¡Ôñ;
-- ͼ±ê×é¼þ(Addition icons) : Ñ¡ÔñÊÇ·ñ´´½¨¿ìËÙÆô¶¯À¸Í¼±ê
»òÕß ÊÇ·ñ´´½¨×ÀÃæ¿ì½Ý·½Ê½;
-- ×ÀÃæä¯ÀÀ(Windows Explorer integration)
: ä¯ÀÀÔ´ÂëµÄ·½·¨, µ¥¶ÀµÄÉÏÏÂÎÄä¯ÀÀ ֻʹÓÃbash »òÕß Ö»ÓÃGit GUI¹¤¾ß; ¸ß¼¶µÄÉÏÏÂÎÄä¯ÀÀ·½·¨
ʹÓÃgit-cheetah plugin²å¼þ;
-- ¹ØÁªÅäÖÃÎļþ : ÊÇ·ñ¹ØÁªgitÅäÖÃÎļþ, ¸ÃÅäÖÃÎļþÖ÷ÒªÏÔʾÎı¾±à¼Æ÷µÄÑùʽ;
-- ¹ØÁªshell½Å±¾Îļþ : ÊÇ·ñ¹ØÁªBashÃüÁîÐÐÖ´ÐеĽű¾Îļþ;
-- ʹÓÃTrueType±àÂë : ÔÚÃüÁîÐÐÖÐÊÇ·ñʹÓÃTruthType±àÂë,
¸Ã±àÂëÊÇ΢ÈíºÍÆ»¹û¹«Ë¾Öƶ¨µÄͨÓñàÂë;

¿ªÊ¼²Ëµ¥¿ì½Ý·½Ê½Ä¿Â¼ : ÉèÖÿªÊ¼²Ëµ¥Öпì½Ý·½Ê½µÄĿ¼Ãû³Æ, Ò²¿ÉÒÔÑ¡Ôñ²»ÔÙ¿ªÊ¼²Ëµ¥Öд´½¨¿ì½Ý·½Ê½;

ÉèÖû·¾³±äÁ¿ : Ñ¡ÔñʹÓÃʲôÑùµÄÃüÁîÐй¤¾ß, Ò»°ãÇé¿öÏÂÎÒÃÇĬÈÏʹÓÃGit
Bash¼´¿É, ĬÈÏÑ¡Ôñ;
-- Git×Ô´ø : ʹÓÃGit×Ô´øµÄGit BashÃüÁîÐй¤¾ß;
-- ϵͳ×Ô´øCMD : ʹÓÃWindowsϵͳµÄÃüÁîÐй¤¾ß;
-- ¶þÕß¶¼ÓÐ : ÉÏÃæ¶þÕßͬʱÅäÖÃ, µ«ÊÇ×¢Òâ, ÕâÑù»á½«windowsÖеÄfind.exe
ºÍ sort.exe¹¤¾ß¸²¸Ç, Èç¹û²»¶®ÕâЩ¾¡Á¿²»ÒªÑ¡Ôñ;

Ñ¡Ôñ»»Ðиñʽ :
-- ¼ì²é³öwindows¸ñʽת»»Îªunix¸ñʽ : ½«windows¸ñʽµÄ»»ÐÐתΪunix¸ñʽµÄ»»ÐÐÔÚ½øÐÐÌá½»;
-- ¼ì²é³öÔÀ´¸ñʽתΪunix¸ñʽ : ²»¹Üʲô¸ñʽµÄ, Ò»ÂÉתΪunix¸ñʽµÄ»»ÐÐÔÚ½øÐÐÌá½»;
-- ²»½øÐиñʽת»» : ²»½øÐÐת»», ¼ì²é³öʲô, ¾ÍÌύʲô;

¿ªÊ¼°²×° :

°²×°½áÊø : over;

3. ÅäÖÃGitHub
ÐÞ¸ÄGit BashµÄÅäÖà : ½«Git BashÉèÖÃΪ¿ìËÙ±à¼Ä£Ê½,
¿ÉÒÔ¸üºÃµÄʹÓøÃÃüÁîÐй¤¾ß :
(1) ´´½¨±¾µØssh
ʹÓÃÃüÁî : ´´½¨±¾µØssh
ssh-keygen -t rsa -C "13241153187@163.com" |
GitHubÓÊÏä : ¸ÃÃüÁîºóÃæµÄÓÊÏä¾ÍÊÇGitHubµÄ×¢²áÓÊÏä
·¾¶Ñ¡Ôñ : ʹÓøÃÃüÁîÖ®ºó, »á³öÏÖÌáʾѡÔñssh-keyÉú³É·¾¶,
ÕâÀïÖ±½Óµã»Ø³µÄ¬Èϼ´¿É, Éú³ÉµÄssh-keyÔÚĬÈÏ·¾¶ÖÐ;
ÃÜÂëÈ·ÈÏ : ÕâÀïÎÒÃDz»Ê¹ÓÃÃÜÂë½øÐеǼ, ÓÃÃÜÂëÌ«Âé·³;

(2) ½«sshÅäÖõ½GitHubÖÐ
½øÈëÉú³ÉµÄsshĿ¼ : C:\Documents and Settings\Administrator\.ssh
ÖÐ, ʹÓüÇʱ¾´ò¿ª id_rsa.pub Îļþ, ½«¸ÃÎļþÖеÄÄÚÈݸ´ÖÆ;
id_rsa.pub ÎļþÄÚÈÝ :
ssh-
rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtT1YCeaNulpfC+
ARqAWrCdfpi6CpW3gkGT0hp6Q8by7NnEfy4dah9CwSrNbWJH5eS4tiqckE+
bdbSVNvAboFD1MtGZjtzE4GDweG/6J/SDYV/ADFN/RLWGb+5rQ8wMCjc/fODgLJDFxk1Fwk/
/TTqTcbtLab1toLcts3zGIW5DstA3RQ0CCX/sPew5m7vh7DcKXluj2TBd9hw== 13241153187@163.com |
½øÈëGitHubÍøÕ¾ : µÇ¼GitHub, Ñ¡ÔñAccount Setting
Óû§ÉèÖà :

Ñ¡Ôñ×ó²àµÄSSH-KEYÑ¡Ïî :

µã»÷ÓÒ²àµÄAdd SSH key :

½«ÉÏÃæ¸´ÖƺõÄssh-key¸´ÖƽøÈ¥ :

ÑéÖ¤ÊÇ·ñÅäÖóɹ¦ :
ʹÓÃÃüÁî :
³É¹¦Ìáʾ : Èç¹û³öÏÖHi han1202012! You've successfully
authenticated, but GitHub does not provide shell access.
¾Í˵Ã÷ÅäÖóɹ¦, ¿ÉÒÔÁ¬½ÓÉÏGitHub;

(3) ÅäÖñ¾µØÓû§ºÍÓÊÏä
Óû§ÃûÓÊÏä×÷Óà : ÎÒÃÇÐèÒªÉèÖÃÒ»¸öÓû§Ãû ºÍ ÓÊÏä, ÕâÊÇÓÃÀ´ÉÏ´«±¾µØ²Ö¿âµ½GitHubÖÐ, ÔÚGitHubÖÐÏÔʾ´úÂëÉÏ´«Õß;
ʹÓÃÃüÁî :
git config --global user.name "HanShuliang" //ÉèÖÃÓû§Ãû git config --global user.email "13241153187@163.com" //ÉèÖÃÓÊÏä |

4. Git BashÌá½»Ô´Âëµ½GitHub
(1) GitHubÖд´½¨Ò»¸ö¹¤³Ì
¹¤³ÌµÄhttpsµØÖ·: https://github.com/han1202012/TabHost_Test.git
.
¹¤³ÌµÄSSHµØÖ· : git@github.com:han1202012/TabHost_Test.git
.
GitHubÌáʾÉú³ÉµÄÃüÁî :
-- Create a new repository on the command
line :
touch README.md git init git add README.md git commit -m "first commit" git remote add origin git@github.com:han1202012/TabHost_Test.git git push -u origin master |
-- Push an existing repository from
the command line :
git remote add origin git@github.com:han1202012/TabHost_Test.git git push -u origin master |
(2) ³õʼ»¯gitĿ¼
ʹÓÃÃüÁî :
Èç¹û²»Ö´ÐÐÕâÌõÃüÁî, ¾Í»á³öÏÖ´íÎó : fatal: Not a git repository (or
any of the parent directories): .git .
(3) Ìí¼ÓÎļþ
ʹÓÃÃüÁî :
¿ÉÄܻᱨ³öһЩ¾¯¸æ, ²»ÓÃÀí»á :
warning: LF will be replaced by CRLF in AndroidManifest.xml. The file will have its original line endings in your working directory. warning: LF will be replaced by CRLF in bin/AndroidManifest.xml. The file will have its original line endings in your working directory. warning: LF will be replaced by CRLF in gen/shuliang/han/tabhost_test/BuildConfig.java. |
½«²Ö¿âÖеÄËùÓÐÎļþÌí¼Óµ½»º´æÖÐ;
(4) Ìá½»»º´æ
ʹÓÃÃüÁî :
git remote add origin git@github.com:han1202012/TabHost_Test.git |
½«Ìí¼Ó»òÕ߸ıäµÄÄÚÈÝÌá½»µ½»º´æÖÐ;
(5) ½«Git±¾µØ»º´æÌá½»µ½GitHubÖÐ
ʹÓÃÃüÁî :
git push -u origin master |
Ö´ÐиÃÃüÁî, Ô´Âë¾Í±»Ìá½»µ½ÁËGitHub ÖÐ;
|