git的一些小命令

丶Pz發表於2018-04-26

git_cmd

git常用命令 <>代表變數,例如 代表分支名稱

遠端庫

檢視遠端庫資訊 git remote -v

檢視遠端倉庫:$ git remote -v

新增遠端倉庫:$ git remote add [name] [url]

刪除遠端倉庫:$ git remote rm [name]

修改遠端倉庫:$ git remote set-url --push [name] [newUrl]

拉取遠端倉庫:$ git pull [remoteName] [localBranchName]

推送遠端倉庫:$ git push [remoteName] [localBranchName]

分支

克隆一個專案 git clone http://xxx.git (ssh)

列出所有分支 git branch -a

列出遠端分支 git branch -r

列出本地分支 git branch

遠端拉取分支 git checkout -b origin/

拉取遠端分支2 git checkout --track origin/

新建一個分支 git branch git checkout 或者 git checkout -b

切換到上一個分支 git checkout -

建立分支連線關係 :git push --set-upstream origin

刪除本地分支 git branch -d

刪除遠端分支 git push --delete origin

強行刪除本地分支 git branch -D

批量刪除本地分支 git branch -a | grep -v -E 'master|dev' | xargs git branch -D

合併分支 git merge

合併分支不用 Fast-forward模式 git merge --no-f

儲存當前工作區修改 git stash

恢復工作區修改內容 git stash pop 等同於 (git stash apply git stash drop)

檢視儲存區記錄 git stash list

文件增刪改查

暫存檔案 git add

暫存匹配檔案 git add *Controller | git add *Service | git add Hello * | git add Hello?

新增所有修改 git add .

提交修改 git commit -m [remark]

新增並提交修改 git commit -am [remark]

替換上一次提交 git commit --amend -m [remark]

版本

回退到上個版本 git reset --hard HEAD^

回退到幾個版本以前 git reset --hard HEAD~2

將檔案從暫存區撤回 git reset HEAD

重置暫存區與工作區,與上一次commit保持一致 git reset --hard

回退到某個版本 git reset --hard xxxxxx

遠端更新 git reset --hard origin/master (dev)

刪除檔案 rm 可以用 git checkout -- 找回

刪除暫存區檔案 git rm --cached

比較檔案差異 git diff git diff .

標籤

本地打標籤 git tag

本地標籤帶備註 git tag -a -m "註釋"

標籤推送 git push origin

標籤推送所有 git push origin --tags

刪除本地標籤 git tag -d

刪除遠端標籤 git push origin --delete tag

刪除遠端標籤 git push origin :refs/tag/

通用配置

檢視配置 git config --list

配置使用者名稱 git config --global user.name

配置郵箱 git config --global user.email

配置顏色 git config --global color.ui true

個人喜好

命令配置 git config --global alias.chk checkout

命令配置 git config --global alias.ci commit

命令配置 git config --global alias.br branch

通用日誌配置 git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

撤銷暫存區 git config --global alias.rollback 'reset HEAD'

其他

狀態 git status

日誌 git log 單行列印 git log --pretty=oneline

日誌 git log -n n為日誌的條數

日誌 git log 某個版本的日誌

日誌最近記錄 git reflog --pretty=oneine

檢視merge圖 git log --graph

追蹤檔案修改記錄 git blame [file]

關聯遠端庫 git remote add origin git@server-name:path/repo-name.git

第一次推送 git push -u origin master

資料

gitignore地址

git初級學習地址

注意事項

隨時 add and commit 防止程式碼丟失

解決衝突注意程式碼合併問題

團隊開發

程式碼簽入流程