git經常使用命令

下面的內容都是我在平時工做中使用頻率較高的場景以及對應的代碼,分享和記錄一下git

基本操做

git init  // 初始化git目錄
git clone // 下載代碼到本地 
git add [file1] [file2] ... // 添加指定文件到暫存區
git commit [file1] [file2] ... // 提交暫存區的指定文件到倉庫區
git pull // 從遠程倉庫拉取代碼到本地
git push // 推送本地倉庫到遠程

建立分支並提交分支

git branch dev  //建立本地分支  
git checkout dev //切換本地分支  
git push origin dev //提交分支到遠端

刪除分支

git branch -d dev //刪除本地分支  
git push origin --delete dev //刪除遠程分支

合併分支

git merge xxx //合併xxx到當前分支

代碼寫錯分支

這個場景用到的挺多的,好比發現了一個Bug,立馬動手去改,卻發現寫到了master或其餘分支上,這時候就須要把咱們剛寫的全部代碼搞到對應的bug分支上去:
git add .      //把全部改動暫存  
git stash     //把暫存的文件提交到git的暫存棧  
git checkout //本該提交代碼的分支   
git stash apply/pop //將暫存棧中的代碼放出來

查看add但沒有commit的內容

git status

查看commit但沒有push的內容

git diff origin/master

合併屢次commit信息(git rebase)

使用場景:可能咱們寫完了一些功能以後,git commit 到了本地倉庫,以後發現有些地方須要修改或者補充一下,這時候就有了第二次提交,同時有可能出現第三次、第四次提交,這時候git log查看提交日誌就會有無用的提交內容,看上去很不美觀,這時候咱們能夠用git rebase來將屢次提交合併爲一個。
  1. git log 查看屢次提交的信息

// -i 交互式界面進行rebaseshell

  1. git rebase -i 8afbeec // 8afbeec是須要合併的分支的前一個分支的point

或者
git rebase -i HEAD~3 // 從HEAD開始,須要合併的分支數app

  1. 以後會出現待合併的提交信息和以下提示:
pick:保留該commit(縮寫:p)

reword:保留該commit,但我須要修改該commit的註釋(縮寫:r)

edit:保留該commit, 但我要停下來修改該提交(不單單修改註釋)(縮寫:e)

squash:將該commit和前一個commit合併(縮寫:s)

fixup:將該commit和前一個commit合併,但我不要保留該提交的註釋信息(縮寫:f)

exec:執行shell命令(縮寫:x)

drop:我要丟棄該commit(縮寫:d)
  1. 將提交信息修改成
pick d2cf1f9 修改後的信息111

squash 47971f6 修改後的信息222

squash fb28c8d 修改後的信息333
  1. wq保存修改
  2. 合併修改commit message
  3. wq

這時候咱們以前提交的屢次commit就會合併爲一個測試


修改剛剛commit提交的message

使用場景:提交以後,想要修改commit的message日誌

git commit --amend

git回滾分支

使用場景: 。。。code

git log 查看提交歷史 git reset --hard dbf8d691 // 回到指定的提交點

git撤銷回滾

git reflog 查看提交歷史(包含已回滾的提交) git reset --hard dbf8d691 // 回到指定的提交點

查看指定分支是基於那個分支建立的

使用下邊的命令,能夠知道某個分支是基於那個分支checkout的,以防止merge的時候,把不須要的內容合併到測試或者正式環境。
git reflog --date=local | grep <branchname>

恢復 git reset 的誤操做

使用場景:在執行git reset --hard 以後,git log就會丟失咱們reset分支以後的內容,想要撤回reset內容看下邊:it

git reflog // 查看log(包含已經reset的log)

此時會顯示出已經reset的分支以後的內容,以後執行git reset --hard 想要到達的分支就行了ast

未完待續...date

相關文章
相關標籤/搜索