git.jpg
-
git init
: git初始化婶熬,并生成.git文件懦底; -
git clone <url(你的項目地址)>
: 克隆項目
例: git clone git@github.com:Iwouldliketobeapig/hexo-dt.git -
git remote add <origin(源名)> <url(項目地址)>
: 添加遠程倉庫
例: git remote add origin git@github.com:Iwouldliketobeapig/hexo-dt.git -
git remote set-url <origin(源名)> <url(項目地址)>
: 為以為源添加或者修改遠程倉庫抵制 -
git remote -v
: 查看源名及遠程倉庫地址 -
git checkout <name(分支名)>
: 切換分支
例: git checkout master -
git checkout -b <name(分支名)>
: 創(chuàng)建并切換到創(chuàng)建分支
例: git checkout -b dev -
git branch
: 查看當前分支及所有分支
8.1git branch -d <name(分支名)>
: 刪除分支
8.2git branch -D <name(分支名)>
: 強制刪除分支 -
git add .
: 暫存所有文件 -
git add <file(文件路徑 + 文件名)>
: 暫存某個文件
例: git add package.json -
git commit -m '備注'
: 添加備注信息等
例: git commit -m 'feat: 添加了某個備注' -
git push <origin(源名)> <name(分支名)>
: 向遠程倉庫推送更改資源 -
git push <origin(源名)> <name(分支名)> --force
: 強制更新遠程倉庫
例: git push origin master -
stash:
git stash
: 儲存當前變更
git stash list
: 查看儲存列表
git stash apply
: 恢復儲存列表中的第一個儲存
git stash apply stash@{n}
: 恢復儲存列表中的某個儲存
git stash drop stash@{n}
: 移除儲存列表中的某個儲存
git stash pop
: 回復儲存且刪除儲存記錄
git stash branch
: 建一個新分支來重新檢驗你儲存的變更 -
git merge <name(分支名)>
: 合并分支
例: git merge test -
git rebase <name(分支名)>
: 合并分支
例: git rebase test
merge與rebase的區(qū)別
1.merge不會保存merge分支的commit
2.處理沖突時
① git add . => git commit -m 'fix: 一些信息'會保存一條commit信息
② git add . => git rebase --continue 不產(chǎn)生額外的附加信息硅急,當需要處理多個commit沖突時,需要重復處理多次
3.git pull 默認未git pull --merge,設置為git pull --rebase即按照rebase處理沖突 -
git pull <origin(源)> <feature(遠程分支名)>
: 從遠程倉庫分支拉取代碼 -
git status
: 查看更改信息(包括本地已更改,及已經(jīng)add但是沒有commit的更改) -
git log
: 查看commit信息 -
git reset [--soft | --mixed | --hard | --merge | --keep ] [<commit>]
例: git reset --soft HEAD^
參數(shù)
[--soft | --mixed | --hard | --merge | --keep ]
① --soft: 只回退commit信息叙甸,不回退commit史翘、add和未add的更改
② --mixed(默認): 回退commit信息枉长,回退未add的更改,保留已經(jīng)add和commit的信息
③ --hard: 直接回退到某個commit版本
[<commit>]
① HEAD^: 回退到上一個commit琼讽,n個^
表示回退到上n個commit
② HEAD^0: 回退到上一個commit,^n
回退到上n個commit
③ commit的SHA1: 可以通過git log查看
gitlog.png