Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
GitС¼¼ÇÉ - Ö¸Áî±ðÃû¼°Ê¹ÓÃBeyond Compare×÷Ϊ²îÒì±È½Ï¹¤¾ß
 
  2343  次浏览      32
 2018-8-10 
 
±à¼­ÍƼö:
±¾ÎÄÀ´×Ômamicode£¬Ö÷Ҫд¸øÊ¹ÓÃÃüÁîÐÐÀ´²Ù×÷GitµÄÓû§£¬ÓÃÓÚÌá¸ßGitʹÓõÄЧÂÊ¡£

ǰÑÔ

±¾ÎÄÖ÷Ҫд¸øÊ¹ÓÃÃüÁîÐÐÀ´²Ù×÷GitµÄÓû§£¬ÓÃÓÚÌá¸ßGitʹÓõÄЧÂÊ¡£ÖÁÓÚʹÓÃÃüÁÊÇGUI£¨Tortoise Git»òVSµÄGit²å¼þ£©¾Í²»ÔÚ´ËÌÖÂÛÁË£¬´ó¼Ò¸ù¾Ý×Ô¼ºµÄµÄϲºÃÑ¡Ôñ¾ÍºÃ¡£ÎÒ¸öÈËÊDZȽÏÍÆ¼öʹÓÃÃüÁîÐеģ¬ÒòΪÃüÁîÐÐÊÇÔ­ÉúµÄ¿Í»§¶Ë£¬µ±ÊìϤÁËÃüÁîÐÐÒÔºó£¬Ê¹ÓÃЧÂʲ¢²»»á±ÈGUIµÍ¡£¶øÇÒÎÒÊÇ´ÓGUI£¨Tortoise SVN£©×ªÃüÁîÐеģ¬¸Õ¿ªÊ¼µÄʱºòÒ²ÊÇͲÛÃüÁîÐеġ°·ÇÈËÐÔ»¯¡±£¬µ«ÎÒ×ß³öÁËÊæÊÊÇø£¬ÕæÕýʹÓÃÆðÃüÁîÐкó£¬ÎҲŷ¢ÏÖÁË×Ô¼ºÖ®Ç°µÄÏë·¨ÊÇ·ôdzµÄ¡£

Ö¸Áî±ðÃû

Ö¸Áî±ðÃû¾ÍÊǸøÒ»Ð©³£ÓõÄÖ¸ÁîÉèÖÃÒ»¸ö½Ï¶ÌµÄÖ¸Áî±ðÃûÀ´Ìá¸ßGitµÄʹÓÃЧÂÊ¡£

Èçgit st(git status)£º

ʹÓÃÖ¸Áî±ðÃû£¬²¢²»»á°ÑÔ­Ö¸Á¸Çµô£¬¶øÊÇͬʱÉúЧ£º

Ö¸Áî±ðÃûÊä´íµÄʱºò£¬Ò²»áÓÐÌáʾ£º

ÎÒÔÚÕâÀï»á·ÖÏíÎÒÉèÖõÄÖ¸Áî±ðÃû£¬Ï£ÍûÄܰïÖúÌá¸ßʹÓÃЧÂÊ¡£

1. ²é¿´×´Ì¬(Show the working tree status) - git status

git st

2. Ìá½»(Record changes to the repository) - git commit

git ci

3. ·ÖÖ§²Ù×÷(List, create, or delete branches) - git branch

git br

4. Ç©³ö(Switch branches or restore working tree files) - git checkout

git co

Ç©³ö·ÖÖ§:

Ç©³ö£¨»¹Ô­£©¹¤×÷ÇøÎļþ£º

Ç©³ö£¨»¹Ô­£©¹¤×÷ÇøËùÓÐÎļþ£º

5.²îÒì(Show changes between commits, commit and working tree, etc) - git diff

¹¤×÷Çø£¨working driectory£©ÓëÔÝ´æÇø£¨staging area£©µÄ²îÒ죺

git df

µ¥¸öÎļþ²îÒ죺

ËùÓÐÎļþ²îÒ죺

ÔÝ´æÇø£¨staging area£©Óë±¾µØ²Ö¿â£¨repository£©µÄ²îÒ죺

git dfs

µ¥¸öÎļþ²îÒ죺

¶à¸öÎļþ²îÒ죺

6.ºÏ²¢(Join two or more development histories together) - git merge

git mr

7.ÈÕÖ¾(Show commit logs) - git log

²é¿´×î½üÒ»ÌõÈÕÖ¾£º

git last

²é¿´ÈÕÖ¾¼°·ÖÖ§Ìá½»ÐÅÏ¢£º

git ls

ÆäÖÐÂÌÉ«µÄ±íʾlocal·ÖÖ§£¬ºìÉ«µÄµÄ±íʾhost·ÖÖ§£¬´ÓÉÏͼ¿ÉÒÔ¿´³ö£¬localµÄmaster·ÖÖ§¡¢hostµÄmaster·ÖÖ§¡¢hostµÄdev·ÖÖ§¶¼´¦ÓÚͬһ¸öÌá½»£¬localµÄdev·ÖÖ§ÁìÏÈÓÚÇ°ÃæÌáµ½µÄ3¸ö·ÖÖ§¡£µ±°æ±¾ÏÔʾ²»È«Ìύʱ£¬¿ÉÒÔ°´»Ø³µ£¨»Ø³µ£©¼ÌÐø¼ÓÔØÌá½»£¬ÐèÒªÍ˳öÊÇ£¬°´×Öĸq¡£ÁíÍ⣬Äã¿ÉÒÔ¼Ó¡°-n¡±Ö¸¶¨²é¿´Ç°nÌõ¼Ç¼£º

²é¿´ÈÕÖ¾¡¢·ÖÖ§Ìá½»ÐÅÏ¢¡¢Ìá½»ÈË¡¢Ìύʱ¼ä£º

git lg

µ±°æ±¾ÏÔʾ²»È«Ìύʱ£¬¿ÉÒÔ°´»Ø³µ£¨»Ø³µ£©¼ÌÐø¼ÓÔØÌá½»£¬ÐèÒªÍ˳öÊÇ£¬°´×Öĸq¡£ÁíÍ⣬Äã¿ÉÒÔ¼Ó¡°-n¡±Ö¸¶¨²é¿´Ç°nÌõ¼Ç¼£º

8.񄯗(Reapply commits on top of another base tip) - git rebase

git rb

ÎÒÀí½âµÄrebaseºÍmerge¹¦ÄÜÉϱȽÏÀàËÆ£¬Ö»ÊÇrebase²Ù×÷ºó£¬Ìá½»»ù±¾¶¼»áÔÚÒ»ÌõÏßÉÏ£¬¶ømerge»á´ÓÒ»ÌõÏߺϵ½µ½ÁíÍâÒ»ÌõÏß¡£

Merge£º

Rebase£º

9.¼ðÑ¡(Apply the changes introduced by some existing commits) - git cherry-pick¡¡

git cb

´ÓͼÖп´¿´³ö£¬cherry-pickÊǰÑij¸öÌá½»¸´ÖƹýÀ´×÷Ϊһ¸öеÄÌá½»£¬ºÍmerge»òÕßrebaseµÄЧ¹û²»Í¬£¬check pickºó¿ÉÒÔ½øÐÐmerge»òrebase²Ù×÷£º

ʹÓÃBeyond Compare×÷Ϊ²îÒì±È½Ï¹¤¾ß

ÃüÁîÐÐ×Ô´øµÄÎļþ²îÒì±È½Ï¹¤¾ß¹¦ÄܱȽϼòµ¥£¬ÓÃÀ´²é¿´»ò¶Ô±ÈÎļþ²îÒìʱ£¬¿ÉÄÜЧ¹û²»Ì«ºÃ£¬ÌرðÊÇÔÚ½â¾ö³åÍ»µÄʱºò£¬µ«ÊÇÎÒÃÇ¿ÉÒÔ¼¯³ÉһЩ±È½ÏÇ¿´óµÄ²îÒì±È½Ï¹¤¾ß£¬±ÈÈç±¾ÎÄÌáµ½µÄBeyond Compare¡£ÄÇô£¬ÎÒÃÇÏÈ¿´Ò»ÏÂÀý×Ó£º

×Ô´øµÄ²îÒì±È½ÏЧ¹û£º

ʹÓÃdifftoolÖ¸Áîµ÷ÓÃBeyond CompareµÄ±È½ÏЧ¹û£º

µ±È»difftoolÒ²¿ÉÒÔʹÓÃÖ¸Áî±ðÃû£º

½â¾öºÏ²¢³åÍ»£º

ÎÒÃÇÔÚdevµÄa.txtÎļþÖÐÌí¼Ó¡°dev¡±ÄÚÈÝ£¬ÔÚmaster·ÖÖ§ÉÏÌí¼Ó¡°master¡±ÄÚÈÝ£¬È»ºóÓÃmaster·ÖÖ§ºÏ²¢dev¡£

ʹÓÃmergetoolÖ¸Áîµ÷ÓÃBeyond CompareºÏ²¢³åÍ»£º

ÓÉÉÏͼ¿ÉÒÔ¿´³ö£¬×ó±ßÊǵ±Ç°·ÖÖ§µÄ°æ±¾£¬ÓұߵÄÊÇÐèÒªºÏ²¢µÄ·ÖÖ§µÄ°æ±¾£¬ÖмäµÄÊÇÏàͬ²¿·ÖµÄ°æ±¾£¬´¦Àí³åÍ»µÄ²ßÂÔ´ó¸ÅÓÐÒÔϼ¸ÖÖ£º

#1 µ±Ç°·ÖÖ§°æ±¾Ìæ»»ºÏ²¢·ÖÖ§°æ±¾£¬µã»÷ÂÌÉ«µÄ¼ýÍ·¡£

#2 ºÏ²¢·ÖÖ§°æ±¾Ìæ»»µ±Ç°·ÖÖ§°æ±¾£¬µã»÷·ÛÉ«µÄ¼ýÍ·¡£

#3 ͬʱÐèÒªÁ½¸ö°æ±¾µÄÄÚÈÝ£¬µã»÷ÂÌÉ«»ò·ÛÉ«µÄ¼ýÍ·£¬È»ºó°ÑÁíÍâµÄ·ÖÖ§µÄÄÚÈÝ¿½±´µ½Ï·½µÄÎı¾±à¼­¿ò¡£

#4 Ö»ÒªÏàͬ²¿·ÖµÄÄÚÈÝ£¬Ê²Ã´¶¼²»¸É¡£

#5 ÆäËû¡£

×îºó£¬µã»÷ºìÉ«µÄ¸Ð̾ºÅ£¬±íʾÒѽâ¾ö³åÍ»¡£ÎÒÕâÀïÑ¡Ôñ#3µÄ²ßÂÔ£º

¹Ø±ÕBeyond Compare£¬Íê³ÉºÏ²¢²Ù×÷¡£

ÈçºÎÅäÖÃ

.gitconfigÊÇÅäÖõÄÖ÷ÒªÎļþ£¬ËüÒ»°ãÔÚC:\Users\{Óû§Ãû}Ŀ¼ÖУ¬Èç¹ûûÓУ¬¿ÉÒÔͨ¹ýÒÔÏÂÁ½²½´´½¨£º

#1 ´ò¿ªÃüÁîÐй¤¾ß

#2 Ö´ÐÐÉèÖÃÓû§Ãû»òÕßÉèÖÃÓÊÏäµÄÖ¸Áî¡£

ÉèÖÃÓû§Ãû£º

git config --global user.name "£ûyour username£ý"

ÉèÖÃÓÊÏ䣺

git config --global user.email "£ûyour email£ý"

´ò¿ª.gitconfigÎļþ£¬°ÑÒÔÏÂÄÚÈÝ¿½±´µ½ÎļþÖУ¬Íê³ÉÖ¸Áî±ðÃûµÄÅäÖãº

[alias]

st = status

ci = commit

co = checkout

br = branch

df = diff

dft = difftool

dfs = diff --staged

dfts = difftool --staged

mr = merge

mrt = mergetool

last = log -1 HEAD

ls = log --oneline --graph --all --decorate

g = log --oneline --graph --all --decorate --pretty= format :"%h%x20% Cgreen%d% x20% Cred% an%x20% C(yellow)% ad%x20% Creset%s" --full-history --date = short

rb = rebase -i

cp = cherry-pick

´ò¿ª.gitconfigÎļþ£¬°ÑÒÔÏÂÄÚÈÝ¿½±´µ½ÎļþÖУ¬Íê³ÉBeyond CompareµÄÅäÖãº

[diff]

tool = bc4

[difftool]

prompt = true

[difftool "bc4"]

cmd = \"D: /Program Files /Beyond Compare 4 /bcomp.exe\" "$ (cygpath -w $LOCAL)" "$ REMOTE "

[merge]

tool = bc4

[mergetool]

prompt = true

[mergetool "bc4"]

#trustExitCode = true

cmd = \"D:/Program Files /Beyond Compare 4 /bcomp.exe \" "$LOCAL" "$REMOTE" "$BASE" "$ MERGED "

×îÖÕЧ¹ûÈçͼËùʾ£º

×îºó

Ï£ÍûÒÔÉÏ·ÖÏíµÄС¼¼ÇÉ¿ÉÒÔÌá¸ß´ó¼ÒµÄЧÂÊ£¬´ó¼ÒÒ²¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄÐèҪȥÉèÖÃÖ¸Áî±ðÃû£¬»¶Ó­´ó¼ÒÌÖÂÛ¼°·ÖÏíÖ¸Áî±ðÃûµÄʹÓÃÐĵá£

   
2343 ´Îä¯ÀÀ       32
Ïà¹ØÎÄÕÂ

ÿÈÕ¹¹½¨½â¾ö·½°¸
ÈçºÎÖÆ¶¨ÓÐЧµÄÅäÖùÜÀíÁ÷³Ì
ÅäÖùÜÀíÖ÷Òª»î¶¯¼°ÊµÏÖ·½·¨
¹¹½¨¹ÜÀíÈëÃÅ
Ïà¹ØÎĵµ

ÅäÖùÜÀíÁ÷³Ì
ÅäÖùÜÀí°×ƤÊé
CM09_CÅäÖùÜÀí±ê×¼
ʹÓÃSVN½øÐа汾¿ØÖÆ
Ïà¹Ø¿Î³Ì

ÅäÖùÜÀíʵ¼ù
ÅäÖùÜÀí·½·¨¡¢¹¤¾ßÓëÓ¦ÓÃ
¶à²ã´Î¼¯³ÉÅäÖùÜÀí
²úÆ··¢²¼¹ÜÀí