git 已經(jīng)成為日常開發(fā)流不可或缺的一部分,甚至說是核心部分,但有些不常用指令時常會忘記,再次做下備忘,省的用到的時候再去找了。用到的時候才會記錄,指令是不斷增加的,請不要見怪 ~>~
創(chuàng)新互聯(lián)建站長期為1000多家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為徐州企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,徐州網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。git 常用指令總結(jié)
官方文檔:https://git-scm.com/book/zh/v2
command | 說明 | 備注 | |
---|---|---|---|
git add . | 提交修改到暫存區(qū) | 修改文件和新增文件,不包括刪除的文件 | |
git add -u | 提交到暫存區(qū) | 刪除文件和修改文件,不包括新增文件 | |
git add -A | --all | 提交到暫存區(qū) | 包括修改文件、新增文件和刪除文件 |
git commit -m '注釋' | 提交到本地版本庫 中 | ||
git commit -am '注釋' | 直接提交到本地版本庫 | 不用再 git add 了 | |
git checkout -- 文件名 | 檢出暫存區(qū)的更新 | 變成未git add 之前的狀態(tài) | |
git pull | 從遠程拉去代碼到本地,并自動合并 merge | ||
git push | |||
git rm --cached file_path | 刪除暫存區(qū)或分支上的文件, 但本地又需要使用, 只是不希望這個文件被版本控制 | ||
git rm file_path | 刪除暫存區(qū)或分支上的文件, 同時工作區(qū)也不需要這個文件了 | ||
git fetch | 從遠程拉取代碼到本地,不自動合并 | 可能會有緩存問題 | |
git fetch -p | 從遠程拉取代碼到本地,不自動合并 | 可以解決緩存問題 | |
git branch -a | 查看遠程分支和本地所有分支 | ||
git branch -r | 查看遠程分支 | ||
git branch -D 分支名 | 刪除本地分支 | ||
git branch -m old_name new_name | 重命名分支名稱 | 新分支推送到遠程后,舊分支還存在,可以手動刪除遠程分支 | |
git push origin :分支名 | 刪除遠程指定分支 [origin 后面有空格] | ||
git push origin --delete 分支名 | 刪除遠程分支 [同上] | ||
git remote add 倉庫名 git地址 | 添加倉庫 | 可以添加多個倉庫,倉庫名不重復(fù)即可 | |
git fetch 倉庫名 | 從指定倉庫獲取遠程所有更新 | ||
git pull 倉庫名 | 從指定倉庫獲取遠程所有更新 | 自動合并 | |
git remote rm 倉庫名 | 移除指定遠程倉庫 | ||
git remote show origin | 查看本地分支和追蹤情況 | ||
git remote prune origin | 本地同步刪除已刪除的遠程分支 | ||
git cherry-pick commitid | 復(fù)制commit 到當前分支 | ||
git cherry-pick commitid1..commitid2 | 檢出 commitid1 到 commitid2 之間的提交到當前分支 | 左開右閉 區(qū)間 | |
回滾 | |||
git reset --hard HEAD^ | 本地提交回滾1次 | ||
git reset --hard HEAD~3 | 最近3次提交回滾 | ||
git remote -v | 查看遠程倉庫地址 | ||
git reset --hard origin/master | 強制與版本庫一致 | ||
git tag | 查看本地所有 tag | git tag -l 'v1.4.2.*' 查看匹配 tag | |
git tag -d tag_name | 刪除本地 tag | ||
git tag [name] | 創(chuàng)建一個新的tag | ||
git tag -a v0.9 9ff91da | 為已經(jīng)提交的代碼 打 tag | 默認為最新代碼 tag | |
git push origin :tag | 刪除遠端 tag | ||
git tag -a v1.4 -m 'my version 1.4' | 創(chuàng)建一個含附注類型的標簽 | -m 選項則指定了對應(yīng)的標簽說明 | |
git check tag | 切換 tag | ||
git show v1.4 | 查看相應(yīng)標簽的版本信息,并連同顯示打標簽時的提交對象 | ||
git tag -s v1.5 -m 'my signed 1.5 tag' | 用 GPG 來簽署標簽 | ||
git push origin [tagname] | 推送標簽至遠程倉庫 | git push 默認不推送 | |
git push origin --tags | 推送所有標簽至遠端倉庫 | ||
git log --oneline --decorate --graph | 以圖像形式查看 commits | 其實git log --oneline 就很清晰 | |
git update | git 2.17.1 之前版本, git 自升級 | ||
git update-git-for-windows | git 2.17.1 之后的版本, git 自升級 |
批量操作
grep 是對 git branch 的輸出結(jié)果進行匹配
xargs 的作用是將參數(shù)列表轉(zhuǎn)換成小塊分段傳遞給其他命令
本地刪除:git branch | grep '正則' |xargs git branch -D
從分支列表中匹配到指定分支,然后一個一個(分成小塊)傳遞給刪除分支的命令,最后進行刪除。
遠程刪除:git branch -r | grep '正則' |xargs git push origin --delete
多倉庫管理
添加第一個倉庫
git remote add origin git-url
添加第二個倉庫
git remote set-url --add origin git-url2
推送到兩個倉庫
git push --all
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。