对äºgitç使ç¨ï¼å¤§å®¶ç使ç¨æ¹å¼åæä¸åï¼æçéçæ¹å¼éå½ä»¤è¡è«å±ï¼åºäºgitçGUI软件è¿æ¯å¾å¤çï¼å¤§å®¶å¯èªè¡ç 究使ç¨ãä¹å使ç¨
eclipse
svnæ件å»æä½çæ¬ç®¡çï¼è¿æ¯å¾ä¾¿æ·çä¸ä»¶äºæ
ãèä»ç¨æ¯äºwebstormï¼å½ç¶éé¢ä¹éæäºå¯¹svnçæ¯æï¼åªæ¯æè¿ä¸ç´å¨ç¨gitï¼æ以æ³è¯çç¨
webstormä¸çgitéæå·¥å
·è¿è¡çæ¬ç®¡çãå½ç¶ä¹åé½æ¯ä»¥æ²å½ä»¤è¡çæ¹å¼å»åï¼è¾¾å°ä¸ä¸ªçç»åº¦ï¼é度è¿æ¯å¾å¯è§çãéè¿è¿ç¯æç« ï¼ä¸»è¦è®²è¿°å¦ä½ä½¿
ç¨webstormä¸çgitå·¥å
·è¿è¡æ´å å¿«éé«æççæ¬ç®¡çã
1. å
说gitç论
webstormæä¾äºgitä¸å°è¯å¾ï¼ä¸é¢å举å
¶ä¸ï¼
æ们å¨ä¸é¢çå°äºgité¢æ¿çå¾å¤é项ï¼æ³è¦å¼æ¸
æ¥å个é项å
·ä½è¦åä»ä¹ï¼å¸¸ç¨ä¸å¸¸è§çgitç论ç¥è¯åæä½ç»éªä¸å¯å°ã
æ们å
ç对gitæä½çç®ååç±»ï¼å¦ä¸ââ
è¿ç¨ä»åºç±»ï¼git clone/remote/pull/push/rebase/fetch
åæ¯ç±»ï¼å
æ¬tagï¼ï¼git branch/tag/checkout/stash
ä¿¡æ¯æ¥é
ï¼git status/log/diff
æ¬å°å¸¸è§æä½ï¼git add/commit/rm/merge/reset
è¿éä»
ä»
æ¯æ个人çåç±»æ¹å¼ï¼æ¯ä¸ªäººé½å¯¹å®æä¸åçåç±»ï¼æ¬¢è¿è¡¥å
ã
éè¦å¼ºè°çæ¯ï¼ä½ éè¦å¯¹ä¸è¿°å½ä»¤å
³é®è¯é½åäºä»ä¹äºå¿ãåºç¨äºä½åºæ¯ï¼éè¦ææ¸
æ°çææ¡ï¼å¦æä½ ä¸ç¥ï¼ä¸æ¾ççæç« æ«å°¾çåèæç« ãå¤è¯´ä¸å¥ï¼ä¸å®è¦ç»åå·¥ä½åºãæååºãçæ¬åºçä¸è
å
³ç³»å»ç解ã
ç»åä¸é¢ç»åºçå¾çï¼æ们å¯ä»¥çå°ï¼webstormä¸çgitå·¥å
·æ éæ¯è¿äºå½ä»¤è¡çå¯è§åæ½è±¡ï¼æ们æ¥ççæä¹ç©å¿å¥½å®ã
2. 使ç¨webstormä¸çgit
2.1 å³é®èå
å
æ¥æçç¥çå³é®æä½ï¼å为两类ï¼æ件夹ï¼æè
å·¥ç¨ï¼å³é®åæ件å³é®ï¼å
ççæ件夹å³é®çææââ
åççæ件å³é®ââ
ä¼åç°ä¸¤è
çå·®å¼ä»
ä»
å¨äºæ件å³é®çè§å¾å¤äºä¸äºdiffæä½ï¼æè
å¯ä»¥èæ³å°git diffå½ä»¤ï¼ãæ们ççå个é项çå«ä¹ââ
Commit File...ããæ交è³æ¬å°çæ¬åº
Addããæ·»å è¿ç¼ååº
Show Current Revisionããæ¾ç¤ºå½åæ件çææ°çæ¬ä¿¡æ¯ï¼å¦ä¸å¾ââ
Compare with the Same Repository Versionããä¸å½åçæ¬ï¼çæ件ï¼åæ¯è¾ï¼å¯ä»¥ç解为ä¸ææ°çæ¬æ¯è¾ï¼ä¹å°±æ¯å¯ä»¥æ¯è¾æ¬å°å·¥ä½åºåæ¬å°çæ¬åºçå·®å¼ï¼ä¹è®°ä½ï¼æ¯è¾è§å¾ä¸ï¼å³ä¾§æ°¸è¿æ¯ææ°çé£ä¸ªçæ¬å
容ï¼ââ
Compare with Latest Repository Versionããä¸ä¸ä¸çæ¬ï¼çæ件ï¼åæ¯è¾ï¼å¯ä»¥ç解为å½åçæ¬ä¸æ¬å°å·¥ä½åºæåçæ´æ¹å
±åæ¥ä¸ä¸ä¸çæ¬æ¯è¾
Compare with...ããä¸ä»»æåå²çæ¬ï¼çæ件ï¼åæ¯è¾
Compare with Branch...ããä¸ä»»æåæ¯ï¼çæ件ï¼åæ¯è¾ï¼å
æ¬æ¬å°åæ¯åè¿ç¨åæ¯
Show Historyããå±ç¤ºå
³èæ¬æ件ï¼æè
æ件夹ä¸çæææ件ï¼æ交信æ¯åå²ï¼æ们å¯ä»¥çå°ï¼åå²æ交信æ¯é¢æ¿åºç°äºä¸æ¹Version Controlé¢æ¿ä¸ââ
Show History for Selectionãã对æå®ç代ç åï¼æ¾ç¤ºåå²çæ¬ä¿¡æ¯
(è¿æ¥ç¬¬äºä¸ªå¾)-------->>>>>>
Revert...ããè¿å代ç ï¼è¦æ³¨æä¸resetçåºåï¼è¿éä»
ä»
æ¯å°æ¬å°å·¥ä½åºç代ç è¿å为æ¬å°ä»åºä¸çææ°çæ¬ç代ç
Repository >ããä»åºäºçº§å¯¼èªé项ï¼å³ç¸å
³ä»åºç±»çæä½
è¦æ³¨æï¼æäºæä½æ¯é对æå个æ件æä½çï¼æ¯å½æä½æ个æ件夹æ¶ï¼æè
æ个工ç¨æ¶ï¼ï¼ä¼ä»¥éä¸çæ件çéå为åä½å±å¼æä½æ件ï¼å¹¶è¿è¡æä½ã
æ们继ç»ççRespositoryçäºçº§å¯¼èªââ
Branchesããæ¾ç¤ºå·¦å³åæ¯ï¼å
æ¬æ¬å°åæ¯åè¿ç¨åæ¯
è¿è对å个åæ¯è½å¤è¿è¡æ´å¤çæä½ï¼å¦ä¸å¾æ示ââ
æè
checkoutããæ£åºè³æ¬å°å·¥ä½åºï¼æ¤æ¶æ¬å°å·²ç»æ£åºè¿
checkout as new local branchããæ£åºè³æ¬å°å·¥ä½åºï¼å¹¶å建æ°åæ¯
compare ãã两个åæ¯è¿è¡æ¯è¾ï¼æ¯å¦ï¼ææ³æ¿å½åçteståæ¯ä¸æ¬å°çmasteråæ¯è¿è¡æ¯è¾ï¼ä¼çå°ââ
ä¼çå°ï¼ä¼æåèªæ交çåæ´å
容ä¸ä¸å表åºæ¥ãè¦æ³¨æï¼è¿éä¸å
å«æ¬å°æè¿è¡çæ´æ¹å°æªæ交å°æ¬å°ä»åºçé¨åï¼å³æ²¡æcommitçé¨åã
merge ããè¿è¡å并æä½ï¼ä»¥æ¯è¾çæ¬åå
¥å½åçæ¬ä¸ï¼mergeçè¿ç¨å½ä¸ï¼å¯è½ä¼æå²çªï¼è¦è®°ä½ï¼å¤äººä¿®æ¹åä¸å¤ä»£ç æ¶ï¼æå¯åºç°å²çªï¼ï¼ç¨åä»ç»æä¹å¤çå²çª
delete ããå é¤å½ååæ¯
OKï¼branchesé¢æ¿ä»ç»å®æ¯ï¼å½ç¶è¿å¯ä»¥å¨æå³ä¸è§åæ ·æbranchesé¢æ¿æä½å
¥å£ï¼å¦ä¸ââ
继ç»ä»ç»ï¼ä»åºäºçº§å¯¼èªââ
Tagããætag
Merge Changesããå并æä½
Stash Changesããstashæä½ï¼å
·ä½ç¨æ³ï¼ä½ è¥ä¸ç¥ï¼å¯ä»¥åèä¸ä¸ä¸é¢çæç«
... ...
è¿éçç¥å©ä¸çé£äºæä½ï¼å
³äºmergeãstashãresetçä¸äºæä½ç»èï¼éè¦å
æå¾è¿ä¸ä¸ªå½ä»¤çç¸å
³åæ°çå
·ä½å«ä¹ï¼åå»æä½å°±å¾å¥½ç解äºã
OKï¼å
³äºå³é®èåå°±ä»ç»å°è¿å¿äºï¼å¯ä»¥çå°å®è½åçäºå¿ââ
1. é常æ¹ä¾¿ç对对æ¯æ件æè
æ件夹çå·®å¼ï¼è¯å¾ç´è§æäº
2. æ¹ä¾¿å常è§çadd/commit/revertæä½ç
3. æ¹ä¾¿æä½çæ¬åºçç¸å
³ç®¡çï¼å¦fetch/merge/push/rebaseçç
2.1 Version Controlé¢æ¿
OKï¼æ¥ä¸æ¥ï¼ä»ç»ä¸ä¸Version Controlé¢æ¿ââ
é¦å
ï¼æ¥ä»ç»å¯¹åºLocal Changes
è¿éä¹å°±æ¯å·¥ä½åºçæ´æ¹ä¸å½åçæ¬å·®å¼çdiffæ件å表ï¼Unversioned
Filesä¹å°±æ¯ä»£è¡¨æ²¡æå å
¥å°çæ¬ç®¡ççæ件å表ï¼éè¦è¿è¡addæä½ï¼æ·»å è¿ç¼ååºä¸ï¼Defaultä¸çæ件æ¯ä»£è¡¨çæ¬ç®¡çä¸ç»è¿æ¬å°æ´æ¹çæ件ï¼
éè¦è¿è¡add åcommitæä½ï¼å°æ´æ¹çæ件添å å
¥ç¼ååºä¸å¹¶æ交å°æ¬å°çæ¬åºä¸ãè¦ç¥ægit addågit commitåäºä»ä¹äºå¿
git addï¼æååºçç®å½æ 被æ´æ°ï¼åæ¶å·¥ä½åºä¿®æ¹ï¼ææ°å¢ï¼çæ件å
容被åå
¥å°å¯¹è±¡åºä¸çä¸ä¸ªæ°ç对象ä¸ï¼è该对象çID 被记å½å¨æååºçæ件索å¼ä¸ã
git commitï¼æååºçç®å½æ åå°çæ¬åºï¼å¯¹è±¡åºï¼ä¸ï¼å¯¹åºçåæ¯ä¼åç¸åºçæ´æ°ãå³HEADæåçç®å½æ å°±æ¯æ交æ¶æååºçç®å½æ
å¯ä»¥å¯¹æ°å¢çæ件è¿è¡add æä½ï¼å¦ä¸ââ
å
¶ä½é项ââ
Revertï¼åä¸è¿°è®²è¿°ï¼å³è¿åæ¬å°åæ´
Move to Another Changelistï¼è½¬å
¥å
¶ä»åæ´æ è®°ï¼åé¨å«ç±»ï¼å¥½ç®¡ç
Show Diffï¼åä¸è¿°è®²è¿°
Jump to Sourceï¼ç´æ¥æå¼åæ´æºæ件
Ignoreï¼å å
¥.gitnoreæ件ä¸
Create Patchï¼æåæ´è¡¥ä¸
Shelve Changesï¼ä¸stashåè½ç¥ç¸è¿ï¼è¯·åçåè¾¹æç«
ç´§æ¥çï¼æ们æ常ç¨çæä½å°±æ¯Commit Changesäºââ
å¯ä»¥åç¬å»commitï¼å½ç¶ä¹å¯ä»¥commitåpush ä¸èµ·è¿è¡ã
å¯ä»¥çåºæ¥ï¼è¿éçLocal Changesä¹å°±èµ·å°äº"git status"å½ä»¤çä½ç¨ã
OKï¼ç»§ç»ä»ç»logé¢æ¿ââ
éä¸ç¸åºåæ¯ï¼å³é®ï¼æ们çå°ââ
æ们çå°ï¼å¸¸è§çé项ï¼å¨ä¸è¿°ä¸å·²æåè¿ï¼å¨æ¤å°±ä¸å¨å°å¦ï¼è¿éçCherry-Pickï¼æçæ¯å°éä¸çæ¬åæ´çæ件å
容mergeè¿å½åå·¥ä½åºä¸ï¼æ们ä¼çå°ï¼åæ ·ä¼åºç°å²çªçæ
åµââ
å½æ们éä¸mergeæä½æ¶ï¼çå°å¦ä¸å¾ââ
è½ç¶æºå¨è§£å³çå²çªä¸æ¯ä»¤äººå¾æ»¡æï¼ä¸è¿ä½ å¯ä»¥åmerge resulté¢æ¿ä¸ï¼ç´æ¥å»è§£å³å²çªï¼ç´æ¥çå°åå²çæ¬ï¼æ¯è¾ç´è§ã
解å³å²çªåï¼ä¹å°±è®©éè¦åå»åaddåcommitæä½ï¼è³äºæä¹ä½¿ç¨ï¼å¨ä¸è¿°å·²æåã
æ¥ä¸æ¥æ¯consoleé¢æ¿ï¼å®ç¨äºè®°å½ææä½ éè¿webstormä¸gitæä½çå½ä»¤ï¼å¦ä¸ââ
çä¸çå°ï¼è¿éçå½ä»¤è¡ï¼ä¹å°±æ¯å¸¸è§çæ们çç¥çå½ä»¤è¡ã
Version Controlé¢æ¿ä»ç»å°è¿å¿ãå¯ä»¥çå°ï¼æ们使ç¨Version Controlé¢æ¿ï¼æ们å¯ä»¥åçäºå¿ââ
1. å¯ä»¥éæ¶çå°æ¬å°åæ´çæ件å表åå
容ï¼æ¹ä¾¿æ交åè¿å
2. çå°ææåæ¯ï¼èªå·±ä¸å°ä¼ä¼´å¿çï¼å¨æï¼å对åºçåæ´å
容ï¼æ¹ä¾¿å¯¹æ¯æ件ï¼æ¹ä¾¿è¿½æ¥é®é¢
3. å¯ä»¥resetæè
mergeä»»æçæ¬
4. åæ ·å¯ä»¥çå°ä»»ææä½çå½ä»¤è¡ï¼å©äºå¦ä¹ gitå½ä»¤è¡
3. ä¼å¿
æ´ä½èè¨ï¼ä¸ªäººè§å¾webstormæä½gitèµ·æ¥ï¼è¿æ¯å¾æ¹ä¾¿ï¼å¤§è´åæä¸ç±»ââ
1. 对æ¯ç±»æä½compare
2. ä»åºç±»æä½repository
3. æ¬å°æä½local changes
个人è§å¾ä¹æ¯ä¸ä¸ªé常ä¸éçå¦ä¹ èç»ï¼æ´ä½æ¥çï¼å
¶æ大çä¼å¿è¿æ¯å¨æ¸
æ°æäºçè§å¾ä¸ã
4. æ»ç»
è³æ¤ï¼å¯¹webstormå¦ä½æä½gitçä»ç»å°±ä»ç»å®æ¯ï¼æå¨è¿å¿ï¼ä¸¾ä¸ä¸ªæ常è§çgitæä½åºæ¯ï¼å¤§å®¶å¯ä»¥å顾çæä½è¯è¯ââ
常è§åä½å¼åï¼åä¸åæ¯å¼å / ä¸ååæ¯å¼åï¼ï¼ add and commit --> fetch â> compare â> merge (and resolve conflicts) â> push
ä»æ¥è§¦gitï¼å°ä½¿ç¨gitå½ä»¤è¡ï¼å°ç解git常è§å·¥ä½åçï¼åå°æ·±å
¥ä½¿ç¨webstormæä½gitï¼æ´ä½èè¨ï¼éè¦åå°ââ
1. è¦çç¥git常ç¨çç论ç¥è¯
2. è¦çæå½ä»¤è¡ï¼å¦æä½ è±ç¦»äºwebstormè¿æ ·çIDEï¼åæ ·è½å¤è¿è¡gitçæ¬ç®¡ç
3. 好好å©ç¨IDE带æ¥çè§å¾æ¸
æ°è¿ä¸ä¸ªä¼å¿ï¼æ´å¿«çæ¥è¯¢é®é¢ã解å³é®é¢
温馨提示:答案为网友推荐,仅供参考