git常用命令(記錄)

  1. git init 初始化命令:進入目錄初始化Git本地倉庫;

  2. git clone 克隆版本庫命令;
    git clone -b 克隆指定的分支;

  3. git add 將內容添加到暫存區命令;
    git add a.txt 將a.txt文件添加到暫存區;
    git add . 將修改和未跟蹤的文件添加到暫存區,不包括刪除的文件;
    git add -u. -u 表示將已跟蹤文件中的修改和刪除的文件添加到暫存區,不包括新增加的文件;
    git add -A. -A 表示將所有的已跟蹤的修改、刪除文件、新增的未跟蹤的文件都添加到暫存區;

  4. git commit 提交命令;
    git commit -m ‘修改說明’ 將暫存區裏的改動給提交到本地的版本庫,並生成40位的哈希值;
    git commit -am ‘修改說明’ 將所有已跟蹤文件中的執行修改或刪除操作的文件都提交到本地;

  5. git log 日誌查看命令;
    git log 查看所有日誌;
    git log --oneline 以一行的形式顯示所有;
    git log -p 顯示文件的修改內;
    git log --name-stat 附加列出變更的文件列表和修改狀態;

  6. git status 狀態查看命令 顯示工作目錄和暫存區的狀態;

  7. git revert 撤銷命令;
    git revert head 撤銷前一次提交,將該提交反向修改提交一個新的版本,不影響歷史;
    git revert HEAD^ 撤銷前前一次提;
    git revert 撤銷指定的提交;

  8. git config 配置參數命令;
    git config --global user.name “名字” 配置系統當前用戶的git用;
    git config --global credential.helper store 長期存儲用戶名和密碼,不需每次都輸入;
    git config --list 列出當前的配置;
    –system --global 分別對應系統級配置/etc/gitconfig 當前用戶級配置~/.gitconfig不加參數對
    應項目級配置.git/config;

  9. git reset 重置命令;
    git reset --soft 重置HEAD到另外一個commit,工作區和暫存區不會變化;
    git reset --mixed 默認,重置HEAD和暫存區到另外一個commit,工作區不會變化;
    git reset --hard 重置HEAD、暫存區和工作區到另外一個commit;
    git reset HEAD~1 撤銷最新的commit,暫存區與HEAD一致,保留工作區內容;
    可參考:https://www.cnblogs.com/kidsitcn/p/4513297.html

  10. git pull 拉去合併命令;
    git pull 從遠程倉庫獲取更新並進行合併(merge);
    git pull origin master:master 拉取origin遠程主機的master分支到本地的master分支。相當於執行:git fetch origin git merge origin/next

  11. git push 推送命令;
    git push 將本地更新推送到遠程主機;
    git push origin master:master 推送本地master分支的更新內容到origin遠程的master分支;

  12. git branch 分支處理命令;
    git branch 列出當前分支清單,加-a:列出當前和遠程分支;
    git branch dev 基於當前分支創建名爲dev的;
    git branch -d dev 刪除本地dev分支;
    git push origin --delete dev 刪除遠程dev分支;

  13. git merge 分支合併命令
    git merge dev 將dev分支的變更合併到當前分支;

  14. git checkout 檢出命令
    git checkout dev 切換到dev分支;
    git checkout -b dev 創建dev分支並且切換到dev分支;
    git checkout -b dev 在當前的某個commit上創建dev分支並切換到dev分支;

  15. git cherry-pick 選擇性合併命令
    git cherry-pick 獲取某一分支的單筆提交,並作爲一個新的提交引入到當前分支;

  16. git tag 標籤管理命令(常用語代碼封板)
    git tag 列出所有的標籤;
    git tag V1.0 創建名爲V1.0的輕量級標籤。輕量級標籤僅爲特定對象的引用;
    git tag -a V1.0 創建名爲V1.0的附註標籤,附註標籤爲存儲於Git中的完整對象;
    git push origin --tags 推送所有標籤到遠程;

  17. git diff 文件名 查看文件不同之處

  18. git remote 查看當前遠程倉庫
    git remote 不帶參數,列出已經存在的遠程分支;
    git remote -v | --verbose 列出詳細信息,在每一個名字後面列出其遠程url;
    git remote add [shortname] [url]:要添加一個新的遠程倉庫,可以指定一個簡單的名字,以便將來引用

  19. git rebase 合併commit(一般限本地使用)
    git rebase --about 任何時候可以用來終止rebase的行動
    git rebase -i HEAD~2 合併最新的兩個commit
    第一列是rebase具體執行的操作,其中操作可以選擇,其中含義如下:
    選擇pick操作,git會應用這個補丁,以同樣的提交信息(commit message)保存提交
    選擇reword操作,git會應用這個補丁,但需要重新編輯提交信息
    選擇edit操作,git會應用這個補丁,但會因爲amending而終止
    選擇squash操作,git會應用這個補丁,但會與之前的提交合並
    選擇fixup操作,git會應用這個補丁,但會丟掉提交日誌
    選擇exec操作,git會在shell中運行這個命令

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