Git 使用總結(jié)
基本命令
創(chuàng)建本地倉庫
1.創(chuàng)建一個(gè)git倉庫首先創(chuàng)建一個(gè)文件夾做為倉庫 然后cd到這個(gè)文件夾然后執(zhí)行命令:
git init
該命令會(huì)創(chuàng)建一個(gè)git 倉庫然后在這個(gè)文件夾下面會(huì)自動(dòng)創(chuàng)建一個(gè) .git 的隱藏文件夾
查看&配置本地用戶信息
config 配置有system級別 global(用戶級別) 和local(當(dāng)前倉庫)三個(gè) 設(shè)置先從system-》global-》local 底層配置會(huì)覆蓋頂層配置 分別使用--system/global/local 可以定位到配置文件
查看系統(tǒng)config
git config --system --list
查看當(dāng)前用戶(global)配置
git config --global --list
git config user.name "xxxx"//配置推送的顯示名稱 git config user.email "xxxx@xx.com" //配置郵箱
以上配置生成后可以在 .git隱藏文件夾下的 config文件里面查看
配置全局用戶名
git config --global user.name "xxxx" //配置全局的顯示名稱
git config --global user.email "xxxxx@xx.com" //配置全局郵箱
<mark> git 會(huì)優(yōu)先查看倉庫的用戶名 如果沒有就會(huì)用全局的用戶名
其他常用操作
. git fetch //抓取遠(yuǎn)端所有更新
. git pull //拉取當(dāng)前分支的更新
. git pull origin develop //拉取develop上分支上的更新(合并develop)
. git status //查看當(dāng)前分支上的狀態(tài)(修改,刪除,等等)
. git add "xxx.h" //添加xxx.h文件的修改保存到暫存區(qū)
. git add . //添加當(dāng)前所有修改文件到暫存區(qū)
. git commit -m "修改了一些bug" //提交所有暫存區(qū)的修改
. git checkout -- GitDemo/GitDemo/ViewController.m //撤銷ViewController所有修改
. git push origin develop //把當(dāng)前暫存區(qū)的文件推送到遠(yuǎn)端 develop 分支
. git branch -a //查看所有分支包括遠(yuǎn)端分支
. git branch develop //新建develop 分支
. git push origin develop:develop //把本地分支develop 推送到遠(yuǎn)端并創(chuàng)建名稱為
develop的遠(yuǎn)端分支分支
. git push origin :develop //可以刪除遠(yuǎn)端develop分支
. git reset --hard HEAD^ //回退到上一個(gè)分支(~109)回退到上109個(gè)分支
. git push -f origin develop //上面是回退 這個(gè)是和線上分支同步回退刪除被回退的提交
. git reset . //取消所有add . 到暫存區(qū)的修改
. git reset --hard origin/develop //放棄develop所有修改包括在暫存區(qū)的也會(huì)
. git merge develop //合并本地develop分支上的最新
Fork模式
綁定原始倉庫
git remote add nullin git://github.com/nullin/testng.git
git branch -vv:查看本地分支和遠(yuǎn)程分支的映射關(guān)系
把本地當(dāng)前分支關(guān)聯(lián)到 遠(yuǎn)端origin下的 xx/xx分支
git branch --set-upstream-to origin/xx/xx
從該遠(yuǎn)程倉庫拉取代碼
git fetch nullin
將該倉庫的某個(gè)分支合并到當(dāng)前分支
git merge kneath/error-page
推送到自己的倉庫
git push origin master
只將感興趣的 commit 加入當(dāng)前代碼
git cherry-pick commit1
git cherry-pick commit2
推送到自己的倉庫
git push origin master
暫存
git stash list 所有保存的記錄列表
git stash [save message] 保存,save為可選項(xiàng),message為本次保存的注釋
git stash pop stash@{num} 恢復(fù),num是可選項(xiàng),通過git stash list可查看具體值。只能恢復(fù)一次
git stash apply stash@{num} 恢復(fù),num是可選項(xiàng),通過git stash list可查看具體值??苫貜?fù)多次
git stash drop stash@{num} 刪除某個(gè)保存,num是可選項(xiàng),通過git stash list可查看具體值
git stash clear 刪除所有保存