<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Git及時自救指南

          共 1558字,需瀏覽 4分鐘

           ·

          2020-08-06 18:54


          • 01
          • 02
          • 03
          • 04
          • 05
          • 06
          • 07

          Git 雖然因其分布式管理方式,不完全依賴網(wǎng)絡(luò),良好的分支策略,容易部署等優(yōu)點,已經(jīng)成為最受歡迎的源代碼管理方式。但是一分耕耘一分收獲,如果想更好地掌握 git,需要付出大量的學(xué)習(xí)成本。即使在各種 GUI 的加持下,也不得不說 git 真的很難,在 V2EX 上也常有如何正確使用 git 的討論,同時在 Stackoverflow 上超過 10w+ 的 git 相關(guān)問題也證明了 git 的復(fù)雜性。再加上 git 的官方文檔也一直存在著 “先有雞還是先有蛋” 的問題,雖然文檔非常全面,但如果你不知道你遇到的問題叫什么,那么根本就無從查起。

          作為國內(nèi)領(lǐng)先的研發(fā)管理解決方案供應(yīng)商,CODING 一直致力于在國內(nèi)普及 git 的使用,為軟件研發(fā)提供更高效率。本文節(jié)選自 Katie Sylor-Miller 在日常工作中所遇到過的讓他很頭疼的 git 相關(guān)問題,并整理了相應(yīng)的應(yīng)對措施,在這里分享給正在學(xué)習(xí)如何使用 git 的同學(xué)們。當(dāng)然這些應(yīng)對措施并不是唯一的,可能你會有其他更好的應(yīng)對方法,這也恰恰是 git 這套版本控制系統(tǒng)強大的地方。

          原文標(biāo)題:《Oh shit,git!》

          原文地址:https://ohshitgit.com/

          01

          / 我剛剛好像搞錯了一個很重要的東西,

          但是 git 有個神奇的時間機器能幫我復(fù)原!/

          reflog 是一個非常實用的命令,你可以使用這個命令去找回?zé)o意間刪除的代碼,或者去掉一些剛剛添加的卻把倉庫里的代碼弄壞的內(nèi)容。同時也可以拯救一下失敗的 merge,或者僅僅是為了回退到之前的版本。

          02

          / 我 commit 完才想起來

          還有一處小地方要修改!/

          當(dāng)我 commit 完然后跑測試的時候,經(jīng)常突然發(fā)現(xiàn)忘了在等于號前面加空格。雖然可以把修改過的代碼再重新 commit 一下,然后 rebase -i 將兩次揉在一起,不過上面的方法會比較快。

          03

          / 我要改一下上一個 commit message!/

          當(dāng)你們組對 commit message 有格式要求時,或者當(dāng)你忘了中英文間要加空格,這個命令能救你狗命。

          04

          / 我不小心把本應(yīng)在新分支上的內(nèi)容

          commit 到 master 了! /

          注意:這個指令必須在錯誤的 commit 后直接執(zhí)行,如果你已經(jīng)試了其他的方式,你可能就需要用 git reset HEAD@{number} 來代替 HEAD~ 了。

          05

          / 我不小心 commit 到錯誤的分支上了! /

          也有很多人推薦了 cherry-pick 的解決方案,所以選哪個就看你心情了。

          06

          / 我執(zhí)行了 diff 但是啥也沒出現(xiàn) /

          Git 不會給通過 add 加入到 staging 區(qū)域里面的文件做 diff ,除非你加了 --staged 的標(biāo)簽,別懷疑了這是一個 feature 不是一個 bug,當(dāng)然對于第一次碰到這個問題的人來說還是有些不好理解的。

          07

          / Git 從入門到放棄 /

          為了維護最后的尊嚴(yán) XD

          不知道你在使用 git 中有沒有遇到過各種令人掀桌的問題呢?

          或者作為 git 資深用戶有什么可以分享的小技巧呢?

          歡迎大家在留言區(qū)跟我們互動~

          推薦閱讀:《架構(gòu)師離職后,成為自由開發(fā)者的第 100 天

          END



          若覺得文章對你有幫助,隨手轉(zhuǎn)發(fā)分享,也是我們繼續(xù)更新的動力。


          長按二維碼,掃掃關(guān)注哦

          ?「C語言中文網(wǎng)」官方公眾號,關(guān)注手機閱讀教程??



          點擊“閱讀原文”,領(lǐng)取 2020 年最新免費技術(shù)資料大全

          ↓↓↓?
          瀏覽 66
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  网红鹿少女演绎点外卖视频 | 日韩射| 精品aaaaaa | www.苗条身,材骚气逼逼出水 | 成人国产一区二区三区精品麻豆 |