一、 Git 常用命令速查
git branch 查看本地所有分支
git status 查看當前狀態(tài)
git commit 提交
git branch -a 查看所有的分支
git branch -r 查看遠程所有分支
git commit -am "init" 提交并且加注釋
git remote add origin git@192.168.1.119:ndshow
git push origin master 將文件給推到服務器上
git remote show origin 顯示遠程庫origin里的資源
git push origin master:develop
git push origin master:hb-dev 將本地庫與服務器上的庫進行關聯(lián)
git checkout --track origin/dev 切換到遠程dev分支
git branch -D master develop 刪除本地庫develop
git checkout -b dev 建立一個新的本地分支dev
git merge origin/dev 將分支dev與當前分支進行合并
git checkout dev 切換到本地dev分支
git remote show 查看遠程庫
git add .
git rm 文件名(包括路徑) 從git中刪除指定文件
git clone git://github.com/schacon/grit.git 從服務器上將代碼給拉下來
git config --list 看所有用戶
git ls-files 看已經被提交的
git rm [file name] 刪除一個文件
git commit -a 提交當前repos的所有的改變
git add [file name] 添加一個文件到git index
git commit -v 當你用-v參數的時候可以看commit的差異
git commit -m "This is the message describing the commit" 添加commit信息
git commit -a -a是代表add,把所有的change加到git index里然后再commit
git commit -a -v 一般提交命令
git log 看你commit的日志
git diff 查看尚未暫存的更新
git rm a.a 移除文件(從暫存區(qū)和工作區(qū)中刪除)
git rm --cached a.a 移除文件(只從暫存區(qū)中刪除)
git commit -m "remove" 移除文件(從Git中刪除)
git rm -f a.a 強行移除修改后文件(從暫存區(qū)和工作區(qū)中刪除)
git diff --cached 或 $ git diff --staged 查看尚未提交的更新
git stash push 將文件給push到一個臨時空間中
git stash pop 將文件從臨時空間pop下來
git remote add origin git@github.com:username/Hello-World.git
git push origin master 將本地項目給提交到服務器中
git pull 本地與服務器端同步
git push (遠程倉庫名) (分支名) 將本地分支推送到服務器上去。
git push origin serverfix:awesomebranch
git fetch 相當于是從遠程獲取最新版本到本地,不會自動merge
git commit -a -m "log_message" (-a是提交所有改動,-m是加入log信息) 本地修改同步至服務器端 :
git branch branch_0.1 master 從主分支master創(chuàng)建branch_0.1分支
git branch -m branch_0.1 branch_1.0 將branch_0.1重命名為branch_1.0
git checkout branch_1.0/master 切換到branch_1.0/master分支
du -hs
git branch 刪除遠程branch
git push origin :branch_remote_name
git branch -r -d branch_remote_name
初始化版本庫,并提交到遠程服務器端
mkdir WebApp
cd WebApp
git init 本地初始化
touch README
git add README 添加文件
git commit -m 'first commit'
git remote add origin git@github.com:daixu/WebApp.git
增加一個遠程服務器端
上面的命令會增加URL地址為'git@github.com:daixu/WebApp.git',名稱為origin的遠程服務器庫,以后提交代碼的時候只需要使用 origin別名即可
二、 Git 命令速查表
1、常用的Git 命令
| 命令 |
簡要說明 |
| git add |
添加至暫存區(qū) |
| git add–interactive |
交互式添加 |
| git apply |
應用補丁 |
| git am |
應用郵件格式補丁 |
| git annotate |
同義詞,等同于 git blame |
| git archive |
文件歸檔打包 |
| git bisect |
二分查找 |
| git blame |
文件逐行追溯 |
| git branch |
分支管理 |
| git cat-file |
版本庫對象研究工具 |
| git checkout |
檢出到工作區(qū)、切換或創(chuàng)建分支 |
| git cherry-pick |
提交揀選 |
| git citool |
圖形化提交,相當于 git gui 命令 |
| git clean |
清除工作區(qū)未跟蹤文件 |
| git clone |
克隆版本庫 |
| git commit |
提交 |
| git config |
查詢和修改配置 |
| git describe |
通過里程碑直觀地顯示提交ID |
| git diff |
差異比較 |
| git difftool |
調用圖形化差異比較工具 |
| git fetch |
獲取遠程版本庫的提交 |
| git format-patch |
創(chuàng)建郵件格式的補丁文件。參見 git am 命令 |
| git grep |
文件內容搜索定位工具 |
| git gui |
基于Tcl/Tk的圖形化工具,側重提交等操作 |
| git help |
幫助 |
| git init |
版本庫初始化 |
| git init-db* |
同義詞,等同于 git init |
| git log |
顯示提交日志 |
| git merge |
分支合并 |
| git mergetool |
圖形化沖突解決 |
| git mv |
重命名 |
| git pull |
拉回遠程版本庫的提交 |
| git push |
推送至遠程版本庫 |
| git rebase |
分支變基 |
| git rebase–interactive |
交互式分支變基 |
| git reflog |
分支等引用變更記錄管理 |
| git remote |
遠程版本庫管理 |
| git repo-config* |
同義詞,等同于 git config |
| git reset |
重置改變分支“游標”指向 |
| git rev-parse |
將各種引用表示法轉換為哈希值等 |
| git revert |
反轉提交 |
| git rm |
刪除文件 |
| git show |
顯示各種類型的對象 |
| git stage* |
同義詞,等同于 git add |
| git stash |
保存和恢復進度 |
| git status |
顯示工作區(qū)文件狀態(tài) |
| git tag |
里程碑管理 |
2、對象庫操作相關命令
| 命令 |
簡要說明 |
| git commit-tree |
從樹對象創(chuàng)建提交 |
| git hash-object |
從標準輸入或文件計算哈希值或創(chuàng)建對象 |
| git ls-files |
顯示工作區(qū)和暫存區(qū)文件 |
| git ls-tree |
顯示樹對象包含的文件 |
| git mktag |
讀取標準輸入創(chuàng)建一個里程碑對象 |
| git mktree |
讀取標準輸入創(chuàng)建一個樹對象 |
| git read-tree |
讀取樹對象到暫存區(qū) |
| git update-index |
工作區(qū)內容注冊到暫存區(qū)及暫存區(qū)管理 |
| git unpack-file |
創(chuàng)建臨時文件包含指定 blob 的內容 |
| git write-tree |
從暫存區(qū)創(chuàng)建一個樹對象 |
3、引用操作相關命令
| 命令 |
簡要說明 |
| git check-ref-format |
檢查引用名稱是否符合規(guī)范 |
| git for-each-ref |
引用迭代器,用于shell編程 |
| git ls-remote |
顯示遠程版本庫的引用 |
| git name-rev |
將提交ID顯示為友好名稱 |
| git peek-remote* |
過時命令,請使用 git ls-remote |
| git rev-list |
顯示版本范圍 |
| git show-branch |
顯示分支列表及拓撲關系 |
| git show-ref |
顯示本地引用 |
| git symbolic-ref |
顯示或者設置符號引用 |
| git update-ref |
更新引用的指向 |
| git verify-tag |
校驗 GPG 簽名的Tag |
4、版本庫管理相關命令
| 命令 |
簡要說明 |
| git count-objects |
顯示松散對象的數量和磁盤占用 |
| git filter-branch |
版本庫重構 |
| git fsck |
對象庫完整性檢查 |
| git fsck-objects* |
同義詞,等同于 git fsck |
| git gc |
版本庫存儲優(yōu)化 |
| git index-pack |
從打包文件創(chuàng)建對應的索引文件 |
| git lost-found* |
過時,請使用 git fsck –lost-found 命令 |
| git pack-objects |
從標準輸入讀入對象ID,打包到文件 |
| git pack-redundant |
查找多余的 pack 文件 |
| git pack-refs |
將引用打包到 .git/packed-refs 文件中 |
| git prune |
從對象庫刪除過期對象 |
| git prune-packed |
將已經打包的松散對象刪除 |
| git relink |
為本地版本庫中相同的對象建立硬連接 |
| git repack |
將版本庫未打包的松散對象打包 |
| git show-index |
讀取包的索引文件,顯示打包文件中的內容 |
| git unpack-objects |
從打包文件釋放文件 |
| git verify-pack |
校驗對象庫打包文件 |
5、數據傳輸相關命令
| 命令 |
簡要說明 |
| git fetch-pack |
執(zhí)行 git fetch 或 git pull 命令時在本地執(zhí)行此命令,用于從其他版本庫獲取缺失的對象 |
| git receive-pack |
執(zhí)行 git push 命令時在遠程執(zhí)行的命令,用于接受推送的數據 |
| git send-pack |
執(zhí)行 git push 命令時在本地執(zhí)行的命令,用于向其他版本庫推送數據 |
| git upload-archive |
執(zhí)行 git archive –remote 命令基于遠程版本庫創(chuàng)建歸檔時,遠程版本庫執(zhí)行此命令傳送歸檔 |
| git upload-pack |
執(zhí)行 git fetch 或 git pull 命令時在遠程執(zhí)行此命令,將對象打包、上傳 |
6、郵件相關命令
| 命令 |
簡要說明 |
| git imap-send |
將補丁通過 IMAP 發(fā)送 |
| git mailinfo |
從郵件導出提交說明和補丁 |
| git mailsplit |
將 mbox 或 Maildir 格式郵箱中郵件逐一提取為文件 |
| git request-pull |
創(chuàng)建包含提交間差異和執(zhí)行PULL操作地址的信息 |
| git send-email |
發(fā)送郵件 |
7、協(xié)議相關命令
| Item |
Value |
| git daemon |
實現Git協(xié)議 |
| git http-backend |
實現HTTP協(xié)議的CGI程序,支持智能HTTP協(xié)議 |
| git instaweb |
即時啟動瀏覽器通過 gitweb 瀏覽當前版本庫 |
| git shell |
受限制的shell,提供僅執(zhí)行Git命令的SSH訪問 |
| git update-server-info |
更新啞協(xié)議需要的輔助文件 |
| git http-fetch |
通過HTTP協(xié)議獲取版本庫 |
| git http-push |
通過HTTP/DAV協(xié)議推送 |
| git remote-ext |
由Git命令調用,通過外部命令提供擴展協(xié)議支持 |
| git remote-fd |
由Git命令調用,使用文件描述符作為協(xié)議接口 |
| git remote-ftp |
由Git命令調用,提供對FTP協(xié)議的支持 |
| git remote-ftps |
由Git命令調用,提供對FTPS協(xié)議的支持 |
| git remote-http |
由Git命令調用,提供對HTTP協(xié)議的支持 |
| git remote-https |
由Git命令調用,提供對HTTPS協(xié)議的支持 |
| git remote-testgit |
協(xié)議擴展示例腳本 |
8、版本庫轉換和交互相關命令
| 命令 |
簡要說明 |
| git archimport |
導入Arch版本庫到Git |
| git bundle |
提交打包和解包,以便在不同版本庫間傳遞 |
| git cvsexportcommit |
將Git的一個提交作為一個CVS檢出 |
| git cvsimport |
導入CVS版本庫到Git?;蛘呤褂?cvs2git |
| git cvsserver |
Git的CVS協(xié)議模擬器,可供CVS命令訪問Git版本庫 |
| git fast-export |
將提交導出為 git-fast-import 格式 |
| git fast-import |
其他版本庫遷移至Git的通用工具 |
| git svn |
Git 作為前端操作 Subversion |
9、合并相關的輔助命令
| 命令 |
簡要說明 |
| git merge-base |
供其他腳本調用,找到兩個或多個提交最近的共同祖先 |
| git merge-file |
針對文件的兩個不同版本執(zhí)行三向文件合并 |
| git merge-index |
對index中的沖突文件調用指定的沖突解決工具 |
| git merge-octopus |
合并兩個以上分支。參見 git merge 的octopus合并策略 |
| git merge-one-file |
由 git merge-index 調用的標準輔助程序 |
| git merge-ours |
合并使用本地版本,拋棄他人版本。參見 git merge 的ours合并策略 |
| git merge-recursive |
針對兩個分支的三向合并。參見 git merge 的recursive合并策略 |
| git merge-resolve |
針對兩個分支的三向合并。參見 git merge 的resolve合并策略 |
| git merge-subtree |
子樹合并。參見 git merge 的 subtree 合并策略 |
| git merge-tree |
顯式三向合并結果,不改變暫存區(qū) |
| git fmt-merge-msg |
供執(zhí)行合并操作的腳本調用,用于創(chuàng)建一個合并提交說明 |
| git rerere |
重用所記錄的沖突解決方案 |
10、雜項
| 命令 |
簡要說明 |
| git bisect–helper |
由 git bisect 命令調用,確認二分查找進度 |
| git check-attr |
顯示某個文件是否設置了某個屬性 |
| git checkout-index |
從暫存區(qū)拷貝文件至工作區(qū) |
| git cherry |
查找沒有合并到上游的提交 |
| git diff-files |
比較暫存區(qū)和工作區(qū),相當于 git diff –raw |
| git diff-index |
比較暫存區(qū)和版本庫,相當于 git diff –cached –raw |
| git diff-tree |
比較兩個樹對象,相當于 git diff –raw A B |
| git difftool–helper |
由 git difftool 命令調用,默認要使用的差異比較工具 |
| git get-tar-commit-id |
從 git archive 創(chuàng)建的 tar 包中提取提交ID |
| git gui–askpass |
命令 git gui 的獲取用戶口令輸入界面 |
| git notes |
提交評論管理 |
| git patch-id |
補丁過濾行號和空白字符后生成補丁唯一ID |
| git quiltimport |
將Quilt補丁列表應用到當前分支 |
| git replace |
提交替換 |
| git shortlog |
對 git log 的匯總輸出,適合于產品發(fā)布說明 |
| git stripspace |
刪除空行,供其他腳本調用 |
| git submodule |
子模組管理 |
| git tar-tree |
過時命令,請使用 git archive |
| git var |
顯示 Git 環(huán)境變量 |
| git web–browse |
啟動瀏覽器以查看目錄或文件 |
| git whatchanged |
顯示提交歷史及每次提交的改動 |
| git-mergetool–lib |
包含于其他腳本中,提供合并/差異比較工具的選擇和執(zhí)行 |
| git-parse-remote |
包含于其他腳本中,提供操作遠程版本庫的函數 |
| git-sh-setup |
包含于其他腳本中,提供 shell 編程的函數庫 |
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。