給自己的Git 常用命令
下面的<>符號實際上不用寫缀棍,只是這里用于括號绕辖,實際忽略
初始化一個git倉庫
git init
git查看遠程倉庫地址命令
git remote -v
拉取遠程代碼
git clone <遠程地址>
git 拉取分支代碼:
git clone <遠程地址> <本地分支名> -b <遠程分支名>
git拉取服務器的全部提交并且合并當前分支
git pull
git拉取服務器當前分支的全部提交并且合并
git pull origin <遠程分支名>
git拉取服務器提交不合并代碼
git fetch
git推送提交到服務器
git push
git推送當前的提交到服務器
git push origin <遠程分支名>
查看當前文件狀態(tài)
git status
添加所有文件到暫存區(qū)
git add .
添加Test.java單個文件到暫存區(qū)
git add Test.java
給本次的提交增加備注
git commit -m "本次的修改記錄備注"
commit -am效果等同于,先執(zhí)行git add再執(zhí)行git commit
git commit -am "本次的修改記錄備注"
合并其它分支代碼
git merge <分支名>
合并遠程分支的代碼
git merge origin/<分支名>
查詢git提交記錄
git log
查詢git提交記錄,單行顯示
git log --oneline
查詢git提交過濾log日志查詢
git log --grep "過濾的文字備注"
查看最近x條更新日志调窍,并且簡單顯示修改的文件(x:用數(shù)字1.2.3等低淡,表示你需要查詢最近的幾個commit,如果你只查詢最新的一個提交x就傳1)
git log -x --stat
查看某個commits的更新日志寻狂,并且簡答顯示修改的文件.
git show <commit_id> --stat
查看分支(默認顯示本地所有分支)
git branch
查看分支(顯示本地所有分支霉颠,并且顯示對應分支的最后一次提交記錄)
git branch -v
查看本地分支
git branch -l
查看遠程分支
git branch -r
查看全部分支
git branch -a
創(chuàng)建分支
git branch <分支名>
查看本地分支與遠程分支的映射關系
git branch -vv
強制拉取合并代碼
git pull origin master --allow-unrelated-histories
建立當前分支與遠程分支的映射關系:
git branch -u origin/<遠程分支名>
或者使用命令:
git branch --set-upstream-to origin/<遠程分支名>
撤銷本地分支與遠程分支的映射關系
git branch --unset-upstream
切換分支
git checkout <分支名>
切換到當前分支,并且放棄當前修改的文件
git checkout .
把遠程分支拉到本地(刷新不合并)
git fetch origin <遠程倉庫的分支名>
在本地創(chuàng)建分支并切換到該分支
git checkout -b <本地分支名> origin/<遠程分支名稱>
本地分支重命名
git branch -m <舊的分支名> <新的分支名>
遠程分支重命名
如果修改遠程分支荆虱,只需要將本地分支重命名為新分支名稱蒿偎,然后刪除遠程分支朽们,再把本地分支上傳就可以了
修改最后一次注釋
如果你只想修改最后一次注釋(就是最新的一次提交)
git commit --amend
出現(xiàn)有注釋的界面(你的注釋應該顯示在第一行),輸入i進入修改模式诉位,修改好注釋后骑脱,按Esc鍵 退出編輯模式,輸入:wq保存并退出苍糠。ok叁丧,修改完成。
git 刪除遠程分支 (origin 后面有空格)
git push origin :<分支名>
git 刪除本地分支(-d為刪除岳瞭,-D為強制刪除)
git branch -D <分支名>
回退版本到某個提交點
git reset --hard <commit id>
合并指定的提交(可以用空格一次合并多個提交號)
git cherry-pick <commit id>
暫停當前的修改,可以做其他操作瞳筏。
git stash
//do some work(比如切換到其它分支修改出版本)
git stash pop
Git標簽
新標簽
git tag <name>
查看所有標簽
git tag
給指定的commit標記
git tag <name> <commit_id>
推送tag到遠程
推送單個
git push origin <name>
推送全部
git push --tags 或者 git push origin --tags
刪除本地tag
git tag -d <tag>
刪除遠程tag
git push origin :refs/tags/<tag>
清除緩存
git rm -r --cached .
git add . #重新添加文件
git commit -m "update .gitignore" #提交和注釋
git push origin master #可選稚瘾,如果需要同步到remote上的話
git創(chuàng)建遠程分支
舉例要在遠程上創(chuàng)建一個分支bingo,需要以下三步:
git checkout -b <bingo>(本地創(chuàng)建分支) origin/develop(遠程分支)
git push origin <bingo>
git branch --set-upstream origin <bingo>
后兩步可以合并成一步:
git push --set-upstream origin <bingo>
git submodule
//拉取工程姚炕,當工程攜帶子模塊的時候
git clone https://git.xxx.git
//更新子模塊
git submodule init && git submodule update
#下面這一句的效果和上面兩條條命令的效果是一樣的,多加了個參數(shù) `--recursive`
git clone https://git.xxx.git --recursive
為指定項目設置用戶名密碼摊欠,這樣的話就不用每次操作遠程都輸入賬號和密碼
//執(zhí)行
git config user.name "bingolee"
//再執(zhí)行
git config credential.helper store
//然后操作遠程的時候,再輸入一遍用戶名密碼柱宦,下次就不需要再輸入了些椒。
下面引用Git小助手的一張圖片
Git常用命令