Git命令

  1. 安裝Git
      1. $ git config --global user.name "Yoour Name"
        $ git config --global user.email "email@example.com"
    1. 注意git config命令的--global參數,用了這個參數,表示你這臺機器上全部的Git倉庫都會使用這個配置,固然也能夠對某個倉庫指定不一樣的用戶名和Email地址。
  2. 建立版本庫
      1. $ mkdir learngit
        $ cd learngit
        $ pwd
        /Users/michael/learngit
    1. 經過git init命令把這個目錄編程Git能夠管理的倉庫:
      1. $git init
    2. 用命令git add告訴Git,把文件添加到倉庫:
      1. $ git add readme.txt
    3. 用命令git commit告訴Git,把文件提交到倉庫:
      1. $ git commit -m "wrote a readme file"
  3. 版本回退
    1. git 倉庫狀態:
      1. $ git status
    2. 查看修改詳情:
      1. $ git diff
    3. 查看日誌:
      1. $ git log
        $ git log --pretty=oneline
    4. 回退到上一個版本號:
      1. $ git reset --hard HEAD^
        $ cat readme.txt
    5. 指定回到某個版本:
      1. $ git reset --hard commit id
        $ cat readme.txt
      1. $ git reflog
  4. 管理修改
    1.   查看工做區和版本庫裏面最新版本的區別:
      1. $ git diff HEAD -- readme.txt
  5. 撤銷修改
    1. 丟棄工做區的修改:
      1. $ git checkout -- readme.txt
    2. 回退版本\把暫存區的修改回退到工做區,HEAD(最新版本):
      1. $ git reset HEAD readme.txt
  6. 刪除文件    
    1. 從版本庫中刪除文件:
      1. $ git rm test.txt
  7. 添加遠程庫(github)
    1. 關聯遠程倉庫:
      1. $ git remote add origin git@github.com:AnswerLiu/learngit.git
    2. 把本地內容推送到遠程倉庫:
      1. $ git push -u origin master
      第一次加「-u」參數,是爲了把本地master分支和遠程master分支關聯起來,之後的推送或拉取能夠不須要。
      1. $ git push origin master
  8. 遠程庫克隆(github)
      1. $ git clone git@github.com:AnswerLiu/test.git
        $ cd test
        $ ls
        README.md
  9. 建立與合併分支
    1. 查看分支:
      1. $ git branch
    2. 建立分支:
      1. $ git branch <name>
    3. 切換分支:
      1. $ git checkout <name>
    4. 建立+切換分支:
      1. $ git checkout -b <name>
    5. 合併某分支到當前分支:
      1. $ git merge <name>
    6. 刪除分支:
      1. $ git branch -d <name>
  10. 解決衝突(手動解決)
    1. 查看分支合併圖:
      1. $ git log --graph
        $ git log --graph --pretty=oneline --abbrev-commit
  11. 分支管理策略    
    1. --no-ff合併分支:
      1. $ git merge --no-ff -m "xxxx" <name>
        $ git log --graph --pretty=oneline -abbrev-commit
  12. Bug分支
    1. 暫時「儲藏」工做現場:
      1. $ git stash
    2. 查看被「儲藏」的工做現場:
      1. $ git stash list
    3. 恢復被「儲藏」的工做現場:
      1. $ git stash apply
        $ git stash drop
      推薦使用:
      1. $ git stash pop
    4. 恢復指定的stash:
      1. $ git stash apply stash@{0}
  13. Feature分支
    1. 強行刪除分支:
      1. $ git branch -D <name>
  14. 多人協做
    1. 查看遠程庫信息:
      1. $ git remote
    2. 顯示詳細信息:
      1. $ git remote -v
    3. 本地建立遠程分支:
      1. $ git checkout -b dev origin/dev
    4. 抓取最新分支:
      1. $ git pull
    5. git pull失敗,將本地分支和遠程分支建立聯繫:
      1. $ git branch --set-upstream branch-name origin/branch-name
  15. 建立標籤
    1. 建立新的標籤:
      1. $ git tag <name>
    2. 查看全部的標籤:
      1. $ git tag
    3. 將以前沒有標籤的commit打上標籤:
      1. $ git tag <name> commit id
    4. 查看標籤的詳細內容:
      1. $ git show <tagname>
    5. 建立帶有說明的標籤,用-a指定標籤名,-m指定說明文字:
      1. $ git tag -a <tagname> -m "說明文字" commit id
    6. -s用私鑰簽名一個標籤:
      1. $ git tag -s <tagname> -m "說明文字" commit id
  16. 操做標籤
    1. 刪除標籤:
      1. $ git tag -d <tagname>
    2. 推送標籤到遠程:
      1. $ git push origin <tagname>
    3. 所有推送標籤到遠程:
      1. $ git push origin --tags
    4. 刪除遠程標籤:
      1. 先從本地刪除
        $ git tag -d <tagname>
        再從遠程刪除
        $ git push origin :refs/tags/<tagname>
  17. git顯示顏色:
    1. $ git config --global color.ui true
  18. 忽略特殊文件
    1. 在Git根目錄下建立.gitignore文件,而後把.gitignore也提交到Git
    2. 強制提交被忽略的文件:
      1. $ git add -f <name>
    3. 檢查.gitignore規則:
      1. $ git check-ignore -v <name>
  19. 配置別名
    1. 配置別名:
      1. $ git config --global alias.<別名> <name>
    2. 經常使用別名:
      1. $ git config --global alias.st status
        $ git config --global alias.co checkout
        $ git config --global alias.ci commit
        $ git config --global alias.br branch
        $ git config --global alias.unstage 'reset HEAD'
        $ git config --global alias.last 'log -1'
        $ 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'
    3. 配置文件目錄:
      1. 每一個倉庫的Git配置文件都在.git/config文件中
      2. 當前用戶的配置文件在用戶主目錄下的一個隱藏文件/gitconfig
       
  20. ……
相關文章
相關標籤/搜索