Git解決pull操做不成功問題

場景

  • 在git pull的時候,若是本地代碼有改動,而服務器上代碼也已經被其餘人更新過,這個時候是沒法成功pull的,能夠經過如下四個步驟解決
  1. git stash
    • 將本地全部修改暫時存儲起來
    • 使用git stash list 查看保存信息
  2. git pull --rebase
    • 暫存了本地修改以後使用pull拉取
  3. git stash pop stash@{0}
    • 還原暫存的內容
    • 若是隻有一次 git stash操做,在還原的本地修改時,直接使用 git stash pop 便可
  4. 解決文件中的衝突部分
    • 若是有文件衝突,衝突地方git會自動指明具體衝突代碼,自行修改便可

附:git經常使用操做

  1. 正常狀況,修改工做區文件後add->commit->push
    • git status
    • git stash 或者git stash save "message..."
    • git pull --rebase
    • git stash pop
    • git add . 或者git add filename
      • . 表示全部文件
    • git commit -m "message..."
    • git push
  2. 撤銷工做區的文件修改(暫存區文件覆蓋工做區文件)
    • git checkout -- filename
  3. 當修改的文件已經add到暫存區,須要撤銷這次添加(撤銷上一次git add filename操做)
    • git reset -- filename或者git reset HEAD filename
    • 撤銷暫存區內全部文件改動:
      • git rest 或者git reset HEAD git rest HEAD .
  4. 當對上次提交不滿意,能夠讓HEAD指針回退,而暫存區和工做區能夠不用改動
    • git reset --soft HEAD ^
  5. 若是讓工做區不改變,而暫存區和引用(HEAD指針)回退一次
    • git reset --mixed HEAD ^
  6. 當須要完全撤銷最近的提交,HEAD指針、暫存區、工做區都回到上一次的提交狀態,自上一次以來的提交所有丟失
    • git rest --hard HEAD ^
相關文章
相關標籤/搜索