因為沒有養(yǎng)成隨手提交代碼的習慣 祖搓,丟失了兩天的代碼瓮钥。本想提交一個實體類文件到遠程筋量。開始不知道是版本問題烹吵,一直push不上,然后一頓騷操作桨武,不小心跑到了最初pull下來的文件肋拔,然后我又回到了最后一次commit版本,從而導致來了detached HEAD呀酸,‘流離’狀態(tài)凉蜂。然后各種百度谷歌,看到一個比較適合我這個問題的解釋detached head是一種HEAD指針指向了某一個具體的 commit id七咧,而不是分支的情況跃惫,?git checkout < commit id>,即切換到指定的某一次提交艾栋,HEAD 就會處于 detached 狀態(tài)(游離狀態(tài))爆存。
我使用git status 命令 告訴我HEAD detached at 32adec8? ,32adec8 應該就是commit? id 了蝗砾,
看到一個解決方法
1基于本次提交創(chuàng)建一個臨時分支.
2然后merge到我當前工作分支.
3刪除臨時分支
我嘗試的是先较,
1查看所有分支 git branch,
2 切換到master 主分支 git checkout master?
3悼粮,切換到原來的分支闲勺,
git告訴我當前位置比maser高出是個版本,此時流離狀態(tài)已經(jīng)不見了扣猫,我commit一下菜循,可以了,此時HEAD沒有了感嘆號申尤,回到了我當前本地版本癌幕。然后使用idea 進行pull下來遠程代碼,然后push上去昧穿,此刻勺远,當前本地和遠程保持了相同的版本。
以此紀念丟失兩天的代碼