Git日常操作以及問題解決思路

  1. 提交代碼到分支,提交不成功問題
1. 切換分支到master, 執行 $git pull,檢查本地master代碼是不是版本庫的最新代碼,如果不是最新的,執行完git pull 之後就會把版本庫最新的代碼更新到本地master。
2.  然後把master 代碼合併到分支,執行 $ git merge branch。
3. 合併完成後,在執行平常提交的操作:
git status
git add .
git commit -m "這裏是註釋"
git pull origin branch
git push origin branch
  1. 創建分支發送到遠程倉庫,然後在測試服務器想拉剛纔創建的分支發現沒找到,解決方案:
1. 執行 $ git checkout -b branch origin/branch    (branch是分支的名稱)
  1. 提交代碼到測試機,發現服務器上的代碼有衝突不能正常運行了,不確定本地的代碼問題還是測試機上面的問題,或者版本庫的問題,分析如下:
1. 先檢查本地代碼是不是有衝突,如果有,解決後重新提交到測試機
2. 檢查本地代碼和版本庫代碼是不是一致的,如果不一致,把版本庫最新代碼更新到本地,再次提交。
3. 如果查看本地代碼和版本庫一不一致那, 查看本地提交日誌,執行 $git log 或者 $ git log --pretty=oneline 查看提交日誌最新的一條,看下提交備註和提交時間等信息,如果和版本庫上面的提交信息一致,就說明是一致的,前提是本地代碼沒有改動,或者已經完全提交到版本庫了。
4. 如果代碼和本地代碼都沒有問題,並且代碼也是一致的,再去查看測試機上面的代碼和版本庫上面的代碼是不是一致的,執行 $ git pull,發現有衝突,並且修改,提交後,再次運行,就可以訪問了。 

git 日常操作

  1. 創建分支
$ git branch test   (test是分支名稱,英文)
  1. 把分支推送到遠程創庫
$ git push origin test   
  1. 刪除本地分支
$ git branch -D test 
  1. 刪除遠程分支
$ git push origin :test
  1. 回退到上一個版本
$ git reset --hard HEAD^
  1. 回退到上上上一個版本,
$ git reset --hard HEAD~3   以此類推
  1. 回退暫存區和工作區
$ git checkout -- test  有兩種情況,1.已經放到暫存區,執行 $ git checkout -- test 後會回到工作區, 2. 如果你還沒有放到暫存區執行$ git checkout -- test 後會回到和最後一次提交到版本庫的代碼一樣,後來改動的代碼也會消失。
  1. 查看提交日誌
$ git log 或者 $ git log --pretty=oneline 後者更清晰
  1. 查看文件修改了那些內容
$ git diff readme.txt 
  1. 查看某個文件的修改記錄
$ git log --pretty=oneline index.js   (index.js是文件名)
$
  1. 查看這個版本的修改了歷史記錄都修改了那些文件以及內容
 $ git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e 把哈希值替換掉
  1. 查看具體一個文件修改了什麼 比如一個index.js文件
$ git show  fd0a49c5d9b5159cb0d8273ccbb3f4c4a7f5e3d1 index.js 
  1. 查看這個文件所有歷史記錄,和 git show 功能類似
$ git log -p filename   (把filename替換成文件名)
  1. 設置關聯遠程分支到本地,方便於提交,git pull和git push的時候就不用添加指定分支名了
$ git push -u origin branch (branch是關聯分支遠程的分支名稱)
下次拉分支的時候直接: git pull 不需要加分支名
推送的時候直接:git push

圖片展示


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章