git命令行
git clone
用于將遠端倉庫拷貝到本地
ssh: git clone username@host:/path/to/repository
https: git clone https:/path/to/repository.git
git config
這個命令定義了所有配置蜕衡,從用戶信息到倉庫行為等等
git config --global --edit : 編輯器打開配置文件
git config --global user.name : 配置提交的用戶名
git config --global user.email : 配置提交的郵箱
git add
將本地工作區(qū)(Working dir)改變提交到緩存區(qū)(Index)
git add : 提交確定文件
git add * : 提交所有更改
git add -A : 提交tracted和untracted中的文件提交到緩存區(qū)
git add -u : 提交tracted中的文件提交到緩存區(qū)
git add -p : 交互式提交
git commit
將緩存的快照提交到項目歷史
git commit -m "" : 提交已經(jīng)緩存的快照。它會運行文本編輯器,等待你輸入提交信息镣煮。當你輸入信息之后,保存文件,關閉編輯器应媚,創(chuàng)建實際的提交。
git status
列出已緩存猜极、未緩存中姜、未追蹤的文件(緩存區(qū)和工作區(qū)文件狀態(tài))
Changes to be committed: 文件在緩存區(qū)
Changes not staged for commit: 在工作區(qū)已經(jīng)追蹤的文件
Untracked files: 在工作區(qū)未追蹤的文件
git pull
拉取并合并遠端項目(默認拉取marter項目)
git push
推送本地git到遠端
git push
git push origin : 推送本地git到遠端某個分支
git push --set-upstream origin : 創(chuàng)建遠端分支并推送代碼
git log git
命令顯示已提交的快照
git checkout
這個命令有三個不同的作用:檢出文件、檢出提交和檢出分支
提交層面
移動HEAD指針到固定的提交
git checkout HEAD~2
git checkout
文件層面
用提交版本中的文件覆蓋本地工作區(qū)的文件
git checkout HEAD~2 test.txt
git checkout HEAD (常用)
分支層面
切換分支
git checkout
git reset
修改提交版本,會刪除提交歷史(一定要謹慎)丢胚,切記當把提交推送到遠端后翩瓜,禁止使用git reset
提交層面
git reset --soft HEAD~2
git reset --soft
除了在當前分支上操作,你還可以通過傳入這些標記來修改你的緩存區(qū)或工作目錄:
* --soft – 緩存區(qū)和工作目錄都不會被改變
* --mixed – 默認選項携龟。緩存區(qū)和你指定的提交同步兔跌,但工作目錄不受影響
* --hard – 緩存區(qū)和工作目錄都同步到你指定的提交
常用操作:
* git reset --mixed HEAD / git reset HEAD
* git reset --hard HEAD
文件層面
用提交版本中的文件覆蓋緩存區(qū)的文件
git reset HEAD~2 text.txt
git reset HEAD
git revert
Revert撤銷一個提交的同時會創(chuàng)建一個新的提交。這是一個安全的方法峡蟋,因為它不會重寫提交歷史坟桅。
git revert HEAD~2
會找出倒數(shù)第二個提交,然后創(chuàng)建一個新的提交來撤銷這些更改蕊蝗,然后把這個提交加入項目中仅乓。
git stash
git stash : 暫存當前正在進行的工作
git stash pop : 恢復暫存的文件
git stash list: 顯示暫存棧中所有暫存的歷史
git stash apply stash@{1} : 將指定暫存紀錄恢復
git stash clear : 清空暫存棧
git branch
創(chuàng)建、列出匿又、重命名和刪除分支
git branch : 列出所有分支
git branch : 創(chuàng)建一個名為的分支
git branch -d : 刪除指定分支方灾。這是一個安全的操作,Git 會阻止你刪除包含未合并更改的分支碌更。
git branch -D : 強制刪除指定分支,即使包含未合并更改洞慎。如果你希望永遠刪除某條開發(fā)線的所有提交痛单,你應該用這個命令。
git branch -m : 將當前分支命名為 劲腿。
簡記圖