溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Git常用場景應(yīng)該如何使用

發(fā)布時間:2020-08-11 09:33:22 來源:億速云 閱讀:170 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹Git常用場景應(yīng)該如何使用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

    1. 本地存在多個commit:

【場景】代碼和遠程倉庫一致,本地修改后,存在多次本地commit,直接push最新的提交,push成功,但本地多次commit記錄也會記錄到遠程倉庫中
【舉例】第一次提交:添加File1文件,文件內(nèi)容666666
              第二次提交: 添加File2文件,文件內(nèi)容888888,修改File1內(nèi)容

Git常用場景應(yīng)該如何使用Git常用場景應(yīng)該如何使用

2. 遠程倉庫代碼回退:

    先本地版本回退:git reset commitid
    本地回退版本強推遠程倉庫:git push -f

3. rebase操作:

【場景】代碼和遠程倉庫一致,本地修改后存在多次本地commit,本地多次提交的代碼沒有沖突,rebase合并本地多次commit
【舉例】如1中例子,第二次提交為最新提交,希望只保留第二次提交
【操作】3-1. git rebase -i commitid

Git常用場景應(yīng)該如何使用

   3-2. 之后會進入類似vim的編輯器(i插入修改,修改完:wq保存)
        pick:表示需要提交的commit記錄|squash:表示合并到前一個commit
        reword:使用本次提交,但修改commit信息

Git常用場景應(yīng)該如何使用     

   3-3. 之后會進入提交信息編輯頁,修改保存,rebase完畢,合并成功

Git常用場景應(yīng)該如何使用Git常用場景應(yīng)該如何使用

【注意】 命令中commitid是兩次提交的前一個commitid
                第一個pick不可修改,可以將后面的squash
                如果頁面顯示noop,就是你的commitid選的是最新提交的commit,這樣是不對的

4. push沖突

【場景】本地commit了,但在push之前,遠程代碼被別人修改過了,代碼沖突的情況處理
【舉例】添加一個File3,提交前手動修改遠程倉庫代碼(模擬別人提交修改了遠程倉庫代碼),遠程倉庫代碼被修改后,本地push
【操作】4-1. 添加File3

Git常用場景應(yīng)該如何使用

        4-2. 修改遠程倉庫代碼

Git常用場景應(yīng)該如何使用

        4-3. 本地push代碼,提示沖突,選擇Merge,直接push成功

Git常用場景應(yīng)該如何使用

        4-4 . Merge后推送到遠端有兩條commit(因為這次push只修改了File3,并沒有修改File1,Merge后相當(dāng)于先拉取代碼再提交,所以直接push成功)

Git常用場景應(yīng)該如何使用

【舉例】添加一個File3,并修改File1,提交前手動修改遠程倉庫代碼(模擬別人提交修改了遠程倉庫代碼),遠程倉庫代碼被修改后,本地push需要手動解決沖突。
【操作】4-a. (版本回退后)添加File3,修改File1

Git常用場景應(yīng)該如何使用

        4-b. 修改遠程倉庫代碼

Git常用場景應(yīng)該如何使用

        4-c. 本地push代碼,提示沖突,選擇Merge后手動解決沖突
            Accept Yours: 該文件選擇你的版本合并到遠端
            Accept Theirs: 該文件選擇遠端的版本,即放棄該文件的修改
            Merge :對比本地和遠端的差異,手動解決沖突,一般都Merge

Git常用場景應(yīng)該如何使用

         左邊是本地的修改,右邊是遠端的代碼,中間是最終推送遠端

Git常用場景應(yīng)該如何使用

        看情況對比修改

Git常用場景應(yīng)該如何使用

        修改確認后可能會出現(xiàn)push被拒絕,再重新提交一次就好了。

Git常用場景應(yīng)該如何使用

Git常用場景應(yīng)該如何使用

【建議】本地先拉取代碼,如果沖突手動解決沖突,然后再push

【注意】沒有commit就拉取代碼,并且Accept Theris,可能會把本地修改過的代碼覆蓋掉,導(dǎo)致修改的代碼丟失,注意備份。

以上是Git常用場景應(yīng)該如何使用的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

git
AI