1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        一分鐘玩轉(zhuǎn) Git

        共 1272字,需瀏覽 3分鐘

         ·

        2020-06-18 23:20

        今天又有新來(lái)的小朋友問(wèn)我關(guān)于 Git 的用法,我發(fā)現(xiàn)還是有蠻多新人不會(huì)用的,或者用不好的。其實(shí)想想自己剛工作時(shí)也是倒騰不清楚這些參數(shù)和用法,而且總怕出錯(cuò),慢慢的多看文檔、用得多了就熟悉了,今天簡(jiǎn)單跟大家分享幾點(diǎn)。

        必知的 add & commit

        首先我們要清楚在本地的三種狀態(tài):

        c087f96a55ca8dfae27205d960834e4f.webp

        好吧我把命令已經(jīng)寫上去了。

        本地改完了代碼,就用

        git add 文件名/文件夾/多個(gè)也可

        提交到緩存區(qū),這里如果文件改動(dòng)的比較多,但又不是每個(gè)都需要提交,我會(huì)設(shè)置 git ignore file,就表示這些文件不要提交,比如在 build project 的時(shí)候會(huì)自動(dòng)生成的那些文件等等。

        然后再

        git commit -m "comment"

        才會(huì)到本地庫(kù)。一般后面都會(huì)跟個(gè) -m 加句 comment,簡(jiǎn)單說(shuō)下改了啥,像我們公司大家默認(rèn)也會(huì)把 Jira鏈接附上,這樣就知道這個(gè)改動(dòng)對(duì)應(yīng)哪個(gè)任務(wù)。

        那如果想再改,再重新 git add 即可,但是 commit 這句需要改成

        git commit --amend

        這樣就還是一條 git log 信息。

        Log

        git log 可以讓我們查看提交過(guò)的日志,這個(gè)主要是因?yàn)槿绻枰獙?duì)版本進(jìn)行前進(jìn) or 后退的(下一個(gè) reset),就需要用到編號(hào)

        直接 run

        git log

        的話就會(huì)顯示一大坨信息,從近到遠(yuǎn)顯示每次 commit 的 comment 還有作者、日期等信息,比如大概長(zhǎng)這個(gè)樣子:

        commit 5abcd17dggs9s0a7a91nfsagd8ay76875afs7d6
        Author: Xiaoqi
        Date: xxx xxx xxx
        改了 Test 文件

        commit 后面的這個(gè)編號(hào),是每次歷史記錄的一個(gè)索引

        這樣打印的 log 太多,更簡(jiǎn)潔的打印方式是:

        git --oneline

        就一行打印出來(lái)了。

        或者:

        git reflog

        更常用一些。

        Reset

        那我們剛剛說(shuō)過(guò),如果需要前進(jìn)或退回到某個(gè)版本,就用

        git reset --hard <編號(hào)>

        這樣就直接跳到了這個(gè)編號(hào)對(duì)應(yīng)的那個(gè)版本。

        那么這個(gè) hard 是什么意思呢?

        這里有 3 個(gè)參數(shù):hard, soft, mixed,我們一一來(lái)說(shuō)一下。

        回到我們最重要的這張圖上來(lái):

        5c7f1c43d888d98b8ced478a502fa10e.webp

        我們剛剛說(shuō)的前進(jìn)或后退到某一版本,是對(duì)本地庫(kù)進(jìn)行的操作。

        那有個(gè)問(wèn)題:
        本地庫(kù)的代碼跳到那個(gè)版本之后,工作區(qū)和暫存區(qū)的代碼就和本地庫(kù)的不同步了呀!

        那這些參數(shù)就是用來(lái)控制這些是否同步的。

        git reset --hard xxx

        三個(gè)區(qū)都同步,都跳到這個(gè) xxx 的版本上。

        git reset --soft xxx

        前面兩個(gè)區(qū)不同步,就只有本地庫(kù)跳到這個(gè)版本。

        git reset --mixed xxx

        暫存區(qū)同步,工作區(qū)不動(dòng)。

        所以呢,用的多的就是 hard.

        【完】


        推薦閱讀:


        a66b462733996249bf4f9b86fe80da9e.webp喜歡我可以給我設(shè)為星標(biāo)哦a66b462733996249bf4f9b86fe80da9e.webp

        84f4c9c052157148b937e5983c171b05.webp好文章,我“在看”fc7fef8aa56c39349523610be7b9a548.webp


        瀏覽 59
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            波多野结衣三极片 | 欧美成人精品网 | 激情五月色综合国产精品 | 《女教师~被淫辱の教室 | 免费国产一级aV | 色玖玖玖玖 | 亚洲最大激情网站 | 青草无码视频 | 日日谢天天摸 | 强干逼逼视频 |