git常見問題-總結筆記

1、git強制更新並覆蓋本地修改

git fetch --all
git reset --hard origin/分支名
git pull

git fetch 只是下載遠程的庫的內容,不做任何的合併     git reset 把HEAD指向剛剛下載的最新的版本 

2、git 如何恢復到指定版本

1、查看git的提交版本和id 拿到需要恢復的版本號

git log

2.、恢復到指定版本 

git reset --hard d7af308745fa442d8879d36f1af289700cefaf86

 3、強制push,推送到你要push的分支

git push -f origin 分支名

3、git 分支操作

查看本地分支:git branch 
查看全部分支:git branch -a
創建分支:git branch 分支名
創建分支同步到遠端(如果遠端沒有會創建分支,如果有同名會關聯) git push --set-upstream origin 分支名
切換分支:git checkout 分支名
創建+切換分支:git checkout -b 分支名
把歷史版本作爲新分支  git checkout -b 分支名  版本號
合併某分支到當前分支:git merge 分支名
刪除本地分支 git branch -D 分支名(如果該分支沒有合併到主分支會報錯,可以用以下命令強制刪除git branch -D 分支名)
刪除本地分支後同步到遠程git push origin :分支名
刪除遠程分支git push origin --delete 分支名
合併分支 git merge 分支名   (把XXX合併到單前分支)
當前分支test:     git merge -X theirs xxx   (進行合併的時候以xxx內容爲準)
當前分支test:     git merge -s ours xxx(進行合併的時候以test內容爲準)

*********一個分支完全覆蓋另一個分支(不友好)****

當前分支使用命令:git reset --hard origin/XXX  (當前分支內容成爲XXX分支)

然後強推命令:git push -f

****************合併某一分支到線上分支 (友好)***********************

當前分支test:     git merge -X theirs xxx   (進行合併的時候以xxx內容爲準)
當前分支test:     git merge -s ours xxx(進行合併的時候以test內容爲準)

4、git暫存和恢復

多人開發,經常遇到開發某一個分支時,需要處理其他事情,這時就可以暫存手頭的工作,進行其他工作,結束之後再恢復

暫存操作  git stash 
暫存操作及標識  git stash save '本次暫存的標識名字'
查看暫存記錄 git stash list
恢復到上次暫存工作 git stash pop
恢復指定的暫存工作 git stash pop stash@{版本號}
刪除某個暫存, 暫存記錄保存在list內,需要通過list版本號取出恢復 git stash drop stash@{版本號}
刪除全部暫存  git stash clear

5、刪除本地文件夾的git

rm -rf .git  刪除本地的git文件夾

****************git取消文件跟蹤(指已經添加到git,然後在 .gitignore 中添加不起作用,繼續追蹤時使用)***********************

git rm -r --cached  XXX  //取消跟蹤文件XXX,不刪除本地文件

git rm -r --cached  XXX/  //取消跟蹤文件夾XXX,不刪除本地文件

git rm -r --f XXX   //取消跟蹤文件XXX,刪除本地文件

6、查看當前倉庫地址以及設置新的倉庫地址

1、查看當前倉庫地址(3種都可以)
git remote show origin   
git remote -v
git remote -version

2、修改倉庫地址
git remote set-url origin XXX  //修改爲新的倉庫地址(XXX爲新的倉庫地址)

如有錯誤歡迎指正

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