作者:
故事我忘了¢
個人微信公眾號:
程序猿的月光寶盒
目錄
- 0.記一次使用git push后,覆蓋了同事代碼的糗事
- 1.還原案發現場的準備工作
- 1.1 新建分支
- 注意:
- 1.2. 分支提交到遠程Git倉庫
- 1.1 新建分支
- 2.糗事發生契機
- 2.1 假設文件是這個html文件,然後你上傳到遠程分支
- 2.2 這時我用另一電腦修改這個文件,並提交到遠程,故意模仿他人操作,如圖,在遠程分支上Linux已經更新過
- 2.3 本地文件也做不一樣的修改,假設自己再不知情的情況下做push操作必然會引起版本衝突
- 2.4 此時本地我已經做了版本合併,所以,再次pull
- 3. 正事來了.回滾吧
- 3.1 將win給回滾調,留下Linux的代碼
- 步驟
- 1. 在目標分支上copy revision number:
- 2. 右擊項目依次選中:git->Repository->Reset HEAD
- 步驟
- 3.1 將win給回滾調,留下Linux的代碼
- 4.提交
- git reset soft,hard,mixed之區別深解
- 3.再次push
- git reset soft,hard,mixed之區別深解
- 5:驗證 上一步的強制push git push -f
0.記一次使用git push后,覆蓋了同事代碼的糗事
前言:
都在WebStorm中操作,Idea或者PyCharm同理
為了高度還原尷尬現場,這裡在原有項目上新建分支,然後都在分支上操作,一方面怕自己搞炸了,一方面真實環境就是如此
1.還原案發現場的準備工作
1.1 新建分支
注意:
這裏創建的分支僅僅在本地倉庫
1.2. 分支提交到遠程Git倉庫
遠程查看確認,確實有,說明分支已經創建
2.糗事發生契機
這時候別人可能會和你改同一文件
2.1 假設文件是這個html文件,然後你上傳到遠程分支
注意這時候都是在剛創建的那個分支操作
可以看到遠程分支已經有了
2.2 這時我用另一電腦修改這個文件,並提交到遠程,故意模仿他人操作,如圖,在遠程分支上Linux已經更新過
2.3 本地文件也做不一樣的修改,假設自己再不知情的情況下做push操作必然會引起版本衝突
Remote changes need to be merged before pushing
推送前需要合併遠程更改
這時你點了合併
上圖,把你的和他的都合併提交,但是出現如下警告
Push has been cancelled, because there were conflicts during update. Check that conflicts were resolved correctly, and invoke push again.
Push已被取消,因為在更新期間有衝突。檢查衝突是否已正確解決,並再次調用pull。
2.4 此時本地我已經做了版本合併,所以,再次pull
3. 正事來了.回滾吧
現在,你被告知Linux
的為正確的修改,並且你上一步的提交影響到他了,要回滾push
到Linux
操作的階段
3.1 將win給回滾調,留下Linux的代碼
步驟
1. 在目標分支上copy revision number
:
2. 右擊項目依次選中:git->Repository->Reset HEAD
Reset Type選Hard,To Commit 寫剛複製的版本號,
然後點擊Reset按鈕
這時候,代碼已經回到了老的版本,這個時候不能
提交代碼,提交也是會衝突的。
4.提交
1.可以使用命令強制提交
git push -f
或者
2.使用Idea,(我使用的是這個方法)
在最新的commit上複製版本號
使用mixed類型,將上面複製的版本號粘貼進來:
git reset soft,hard,mixed之區別深解
git reset soft,hard,mixed之區別深解
又出來這個提示
3.再次push
此時 代碼是最新的正確的,
也就是Linux操作的正確修改
5:驗證 上一步的強制push git push -f
1.說明
將程序從錯誤的復原,回滾到win操作
2.步驟
按照上面的步驟進行操作。
在後面提交的時候,直接強制提交,
則效果是:
可以看到一開始的
對應遠程的文件
至此就恢復以及修改了,Linux端只要pull一下就行了,就是最新代碼
本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
【其他文章推薦】
※網頁設計一頭霧水該從何著手呢? 台北網頁設計公司幫您輕鬆架站!
※網頁設計公司推薦不同的風格,搶佔消費者視覺第一線
※Google地圖已可更新顯示潭子電動車充電站設置地點!!
※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益
※別再煩惱如何寫文案,掌握八大原則!
※網頁設計最專業,超強功能平台可客製化