当前位置: 首页 > 后端技术 > Java

三行代码让你的git记录一尘不染

时间:2023-04-02 10:40:42 Java

鍓嶈█浣滆€呮渶杩戝湪涓诲涓€涓」鐩殑鏋舵瀯杩佺Щ銆傜敱浜庤縼绉婚」鐩巻鍙插寘琚辫緝閲嶏紝浜哄憳鍗忎綔杈冨锛岃縼绉昏繃绋嬩腑闅惧厤瑕佽繘琛屽鍒嗘敮銆佸娆ommit鐨勬儏鍐碉紝鏃堕棿涓€闀匡紝gitcommit璁板綍灏卞彉鎴愪簡娣蜂贡鐨勩€傚氨鎴釜鍥惧舰鍖栫殑gitcommithistory缁欏ぇ瀹舵劅鍙椾竴涓嬨€傚悇涓敮鑴夊鍚庡濡冨瓙浜夊疇涓€鑸柉鐙傚幃鏉€銆傞€犳垚杩欑鎯呭喌鐨勫師鍥狅紝涓昏鏄互鐢ㄤ簡gitmerge鍛戒护锛屾病鏈夎€冭檻鍒板悗缁殑鐞嗚В鎴愭湰銆傚浠婏紝鍦ㄥぇ宸ュ巶宸ヤ綔鐨勭▼搴忓憳缁忓父鎺ュ彈鍙樻洿鐨勯渶瑕併€備竴鏃︿粬浠竴寮€濮嬩笉浠旂粏鑰冭檻锛屽氨浼氭湁寰堝鏃犳剰涔夌殑鎻愪氦鏃ュ織銆傚啀鍔犱笂鈥滄晱鎹封€濈悊蹇电殑鎺ㄥ箍锛屼骇鍝佺殑蹇€熻凯浠f帹鍑轰細鍙戠敓鍙樺寲銆備綔涓烘牳蹇冩寚鏍囷紝杩欎簺鏃犳剰涔夌殑commitlog浼氳鈥滀笅娆″鐞嗏€濓紝涔呰€屼箙涔嬪氨浼氬彉寰楁贩涔便€傝€屽綋鎴戜滑鏌ョ湅涓€浜涘紑婧愪粨搴撴椂锛屾垜浠細鍙戠幇瀹冧滑鐨勬彁浜よ褰曢潪甯告暣榻愩€傚叾瀹炶繖骞朵笉鏄洜涓虹ぞ鍖虹殑绋嬪簭鍛樿兘鍔涙洿寮猴紝鑰屾槸鍥犱负浠栦滑娌℃湁KPI妫掔殑闉瓙锛屽湪鎻愪氦浠g爜鍓嶄細鑺辨椂闂存暣鐞嗕竴涓嬭嚜宸便€傛彁浜ゆ棩蹇椼€傝€岃繖灏辨槸鏈枃鐨勪富瑙掆€斺€斺€淕itRebase鈥濄€俫itrebase鍜実itmergegitrebase锛屼腑鏂囩炕璇戜负鈥渞ebase鈥濓紝閫氬父鐢ㄤ簬鍒嗘敮鍚堝苟銆傛棦鐒惰鍒板垎鏀悎骞讹紝閭h偗瀹氱涓嶅紑gitmerge杩欎釜鍛戒护銆傜浉淇℃瘡涓柊鎵嬬▼搴忓憳鍒濆叆鑱屽満鐨勬椂鍊欙紝閮戒細鍚埌鈥渪xx锛岃鍚堝苟鏈垎鏀€濊繖鍙ヨ瘽銆傞偅涔堥棶棰樻潵浜嗭紝濡傛灉浣犳湁6涓▼搴忓憳涓€璧峰伐浣滐紝浣犱細鏈?涓▼搴忓憳鍒嗘敮锛屽鏋滀綘浣跨敤merge锛屼綘鐨勪唬鐮佸巻鍙叉爲灏嗘湁6涓垎鏀笌涓诲垎鏀氦缁囧湪涓€璧枫€備笂鍥炬槸gitmerge鎿嶄綔鐨勬祦绋嬪浘銆侻erge鍛戒护浼氫繚鐣欐墍鏈夋彁浜ょ殑鍘嗗彶鏃堕棿銆傛瘡涓汉瀵逛唬鐮佺殑鎵胯閮芥槸涓嶅悓鐨勩€傝櫧鐒惰繖浜涙椂闂村浜庣▼搴忔湰韬病鏈変换浣曟剰涔夈€備絾鏄痬erge鍛戒护鐨勫垵琛锋槸涓轰簡璁╄繖浜涙椂闂翠笉琚慨鏀广€傜粨鏋滐紝褰㈡垚浜嗗熀浜庡悎骞舵椂闂寸殑缃戞牸鍘嗗彶缁撴瀯銆傛瘡涓垎鏀細缁х画淇濈暀鑷繁鐨勪唬鐮佽褰曪紝鍙湁鍚堝苟鍘嗗彶浼氫繚鐣欏湪涓诲垎鏀笂銆傚瓙鍒嗘敮鍙互闅忔椂鍒犻櫎銆傚垹闄ゅ瓙鍒嗗瓙鍚庯紝鍙互鐪嬪埌鐨勮褰曟槸鏌愪釜鍒嗘敮琚悎骞跺埌鏌愪釜鍒嗘敮銆傝繖娈靛巻鍙叉弿杩板熀鏈笂娌℃湁鎰忎箟銆俫itrebase鐨勪腑鏂囪瘧鍚嶆槸鈥渞ebase鈥濓紝杩欎釜base鎸囩殑鏄痓enchmark銆傚浣曠悊瑙h繖涓熀鍑嗭紵璁╂垜浠湅鐪嬩笅闈㈢殑鍥剧墖銆傛垜浠彲浠ョ湅鍒皉ebase涔嬪悗feature鍒嗘敮鐨刡ase鍒嗘敮鍙戠敓浜嗗彉鍖栵紝鍙樻垚浜嗘渶鏂扮殑master銆傝繖绉颁负鈥滃彉鍩衡€濄€備粠涓婇潰涓ゅ紶鍥惧彲浠ュ緢鏄庢樉鐨勫彂鐜帮紝涓ょ鍚堝苟鍒嗘敮鐨勬柟寮忔渶澶х殑鍖哄埆灏辨槸鍚堝苟鍚庣殑鍒嗘敮浼氫繚鐣欎袱涓垎鏀殑鎿嶄綔鈥嬧€嬭褰曪紝鍦╣itcommit涓細浠ュ弶鐨勫舰寮忓嚭鐜版棩蹇楁爲淇濆瓨銆俽ebase涔嬪悗鐨勫垎鏀細鍩轰簬鏈€鏂扮殑master鍒嗘敮锛屾墍浠ヤ笉浼氬舰鎴愬垎鍙夛紝浠庡ご鍒板熬閮芥槸涓€鏉″共鍑€鐨勭洿绾裤€俫itrebase鍜実itmerge鐨勮缁嗙敤娉曚笉鍦ㄦ湰鏂囪璁鸿寖鍥村唴锛屽叿浣撳彲浠ュ弬鑰冪綉涓婂叾浠栬祫鏂欍€傚湪rebase杩囩▼涓紝鎴戜滑閫氬父闇€瑕佷慨鏀筩ommit锛岃繖涔熶负鎴戜滑鎻愪緵浜嗕竴涓暣鐞唃it璁板綍鐨勯€夐」銆備繚鎸佹渶鍚庡嚑鏉¤褰曟暣娲佸亣璁炬垜浠湁涓€涓粨搴擄紝鎴戝湪杩欎釜浠撳簱閲屾墽琛屼簡4娆℃彁浜わ紝閫氳繃gitreflog鍛戒护鏌ョ湅鎻愪氦璁板綍濡備笅銆傚鏋滄垜浠兂灏咰ommit-3銆丆ommit-2鍜孋ommit-1鐨勬彁浜ゅ悎骞朵负涓€涓彁浜わ紙鍋囪鍦ㄦ煇涓彁浜や腑鏇存敼浜嗕竴浜沺om鏂囦欢锛夛紝鎴戜滑鍙互鐩存帴鎵ц濡備笅鍛戒护gitrebase-iHEAD~3copycode-i鎸囩殑鏄?-interactive锛孒EAD~3鎸囩殑鏄渶鍚?娆ommit銆傚綋鐒讹紝鎴戜滑涔熷彲浠ョ洿鎺ユ寚瀹氳淇濈暀鐨勬渶鏂癈ommit鐨処D銆備笂闈㈢殑渚嬪瓙涓槸Commit-0鐨処D锛屾墍浠ユ垜浠篃鍙互鍐檊itrebase-id2b9b78鏉ュ鍒朵唬鐮併€傛墽琛岃鍛戒护鍚庯紝鎴戜滑灏嗚繘鍏ュ涓嬬晫闈細璇ョ晫闈㈡槸涓€涓猇im鐣岄潰锛屾垜浠彲浠ュ湪璇ョ晫闈㈡煡鐪嬪拰缂栬緫鍙樻洿璁板綍銆俈im鐨勬搷浣滃彲浠ョ湅鎴戜箣鍓嶇殑鏂囩珷鍜屽綍鍒剁殑瑙嗛馃憠銆婂拰Vim鐨勫垵娆¤闈€嬪湪鐪嬪墠涓夎涔嬪墠锛屾垜浠厛鏉ョ湅涓€涓嬬5琛岀殑鍛戒护锛屽姞娣卞gitrebase鐨勭悊瑙c€傜炕璇戝氨鏄皢鍒嗘敮d2b9b78..0e65e22rebase鍒板垎鏀痙2b9b78锛屽嵆灏咰ommit-3/2/1/0鐨勫彉鏇村悎骞跺埌Commit-0涓€傚洖鍒版渶寮€濮嬬殑涓夎锛岃繖涓夎鍒嗗埆浠h〃浜嗘垜浠渶瑕佹搷浣滅殑涓変釜Commit锛屾瘡琛屾渶涓婇潰鏄疌ommand锛屽Commit杩涜鎿嶄綔銆傝€屾瘡鏉″懡浠ゆ寚鐨勬槸浠€涔堬紝鍛戒护琛屽凡缁忚缁嗙殑鍛婅瘔浜嗘垜浠€俻ick:Usethiscommitsquash:浣跨敤杩欎釜Commit锛屼絾鏄細鍚堝苟鍒颁箣鍓嶇殑Commit涓€俧ixup:鍜宻quash涓€鏍凤紝浣嗘槸浼氫涪寮冩湰娆ommit鐨凜ommit娑堟伅銆傛墍浠ユ垜浠彲浠ョ洿鎺ユ敼鎴愪笅闈㈢殑锛岃繖閲岀敤鐨勬槸fixup鑰屼笉鏄痵quash涓昏鏄洜涓簊quash浼氳浣犻噸鏂拌繘鍏ommitlog銆傚鏋滄兂鐪佷簨锛屽彲浠ヤ笉鍋囨€濈储鍦伴€夋嫨fixup妯″紡銆傜劧鍚庢墽琛岋細wq閫€鍑簐im缂栬緫鍣紝鎴戜滑鍙互鐪嬪埌鎺у埗鍙版湁杈撳嚭Successful銆傝繖涓椂鍊欐垜浠啀鐪嬩竴涓嬫棩蹇楄褰曪紝鎵цgitlog--oneline锛屾渶鍚庣殑3鏉℃彁浜よ褰曚細鍚堝苟涓?鏉℃彁浜よ褰曘€傚湪涓棿淇濇寔涓€浜涜褰曟暣娲併€傚鏋滃悎骞剁殑涓嶆槸鏈€鍚庡嚑涓猚ommit锛岃€屾槸涓棿杩炵画鐨刢ommit锛屾槸鍚﹀彲浠ョ敤涓婇潰鐨勬柟娉曟潵缁勭粐鍚堝苟鍛紵绛旀鏄偗瀹氱殑锛屼絾闇€瑕佹敞鎰忋€傝鎴戜滑閲嶆柊鍒涘缓涓€涓柊浠撳簱銆傚鏋滆繖娆℃垜浠灏嗏€滅涓夋鎻愪氦鈥濆拰鈥滅浜屾鎻愪氦鈥濆悎骞朵负涓€涓彁浜わ紝鏂规硶鍚屼笂锛屽彧闇€瑕佹墽琛実itrebase-iHEAD~3锛岀劧鍚庢妸涓棿鐨勬彁浜ゆ敼鎴愬嵆鍙痜ixup/squash妯″紡锛屽涓嬪浘鎵€绀猴細涔嬫墍浠ユ槸HEAD~3锛屾槸鍥犱负鎴戜滑瑕佽繘琛岀殑鏇存敼鏄熀浜庣涓€娆ommit锛屾墍浠ユ垜浠篃鍙互鍐欐垚gitrebase-ia1f3929鏉ヤ釜look鏇存敼鍚庣殑commitlog濡備笅鍥炬墍绀猴細绗笁娆ommit鏄惁琚玨illed锛熶笁琛屼唬鐮佽gitcommit璁板綍淇濇寔鏁存磥涓婇潰鎴戜滑閮芥槸鏁寸悊浜嗘湰鍦癵it浠撳簱涓殑commit璁板綍锛屼絾鏄湪瀹為檯寮€鍙戣繃绋嬩腑锛屾垜浠熀鏈笂閮芥槸鍐欏畬鐩存帴push鍒拌繙绋嬩粨搴擄紝閭e簲璇ュ浣曚繚鎸佽繙绋嬪紑鍙戝垎鏀共鍑€鏁存磥锛熺涓€绉嶆柟寮忔槸鍦ㄦ帹閫佷唬鐮佷箣鍓嶅厛鍦ㄦ湰鍦版暣鐞嗚嚜宸辩殑浠g爜锛屼絾鏄繖绉嶆柟寮忎笉閫傜敤浜庢湰鍦版棤娉曢儴缃诧紝闇€瑕侀儴缃插埌杩滅▼鐜璋冭瘯鐨勫満鏅€傝繖涓椂鍊欐垜浠彧闇€瑕佹墽琛実itpush-f鍛戒护灏卞彲浠ュ皢鎴戜滑鐨勪慨鏀瑰悓姝ュ埌杩滅▼鍒嗘敮銆?f琛ㄧず寮哄埗銆傚己鍒舵帹閫佺殑鍘熷洜鏄洜涓烘湰鍦板垎鏀殑鍙樺寲涓庤繙绋嬪垎鏀笉鍚岋紝闇€瑕佺敤鏈湴鐨勫彉鍖栬鐩栬繙绋嬪垎鏀€傝繙绋嬪垎鏀洿鏂板悗锛屽鏋滃叾浠栦汉鍦ㄨ繖涓垎鏀笂涔熸湁鏀瑰姩锛岄渶瑕佹墽琛実itpull鍛戒护鍚屾杩滅▼鍒嗘敮銆傝繖閲屾垜浠€荤粨浜嗕繚鎸乬it鎻愪氦璁板綍骞插噣鐨勪笁琛屼唬鐮併€俫itrebase-ixxxgitpush-fgitpullcopycode鉂楋笍鉂楋笍鉂楋笍Tips锛氱敱浜巖ebase鍜宲ush-f鏄湁浜涘嵄闄╃殑鎿嶄綔锛屽缓璁彧鍦ㄨ嚜宸辩殑鍒嗘敮涓婃墽琛屻€?/p>

最新推荐
猜你喜欢