【3.工程開發】-基礎gdb/shell/git

git

上線merge屢次,回滾master?
保留merge前的分支,刪除當前分支再切到新分支。git push -f origin feature_daily_xinghongyan_1:feature_daily_xinghongyan_1 不帶feature_daily_xinghongyan_1就是直接刪除
將某次提交提到另外一個分支上。好比在master上不當心提交了,想改到feature_daily_xinghongyan_1中
git log -1 獲取最後一次commit
git checkout feature_daily_xinghongyan_1
git cherry-pick 49c4780a0b8820142b82975becef6c9f5797556e
git pushgit

git本地倉庫有diff就會複製文件,svn存diff
svn沒有暫存區,只能提交全部到遠端
git diff --cache add後和遠端對比 dir add 暫存 cm 遠端 git diffs 是dir和暫存,搞清哪些是暫存命令,哪些是遠端shell

撤銷
git reset --hard ab5180f278db93248ca9c3eb20a00a8b71d0df61 //用於commit可是沒有Push的狀況
git push -f origin feature_daily_xinghongyan_1
指針網前指(soft),暫存區內容變遠端(不帶),工做區變暫存區(hard)
git revert ab5180f278db93248ca9c3eb20a00a8b71d0df61 //用於已經push的狀況,可是隻能撤回這次的。以後的提交併不撤回
要撤回Merge沒有什麼好方法。保留merge前的分支,刪除當前分支再切到新分支。
git revert -m 1 回到merge以前主幹狀態,-m 2回到另外一個分支的狀態git revert ab5180f278db93248ca9c3eb20a00a8b71d0df61 //用於已經push的狀況,可是隻能撤回這次的。以後的提交併不撤回
要撤回Merge沒有什麼好方法。保留merge前的分支,刪除當前分支再切到新分支。
git revert -m 1 回到merge以前主幹狀態,-m 2回到另外一個分支的狀態sass

shell

grep -nr 當前目錄查
find . -type f |xargs cat |wc -l
find . -type f |xargs cat |grep function |wc -l多線程

cat www.access.log | awk '{if($9>0) sum+=$9;num+=1 };END{print sum/num;print sum;print num}'
cat prize_access_log.20160921* | awk '{print $2}'|sort|uniq -c|wc -l
cat dirpc.log | awk '{if(match($0,"latency=([0-9]+)",m)){sum+=m[1];num+=1}};END{print sum/num;print sum;print num}'svn

tar -cf xx.tar xx
tar -xvf 函數

split -2 hello split1_ -d -a 2線程

netstat -aon|grep 2515
telnet 10.94.121.45 8000
sed -n ‘開始行數,結束行數p’ 被截取文件 > 另存爲文件 p打印 d刪除
cat trace.txt|sed '1d' |cut -b 22-|grep " *-> Xiaoju" > trace
tree -d
du -sh .指針

gdb

gdb <program> [core dump]
gdb --pid <pid>
set args <args...>
run
s/step
n (進入函數)
f Continue until the current function re- turns.
c Continue normal execution.調試

frame
bt
p xx , p (A)pObj1
b xx ; info breakpoints ;code

info frame
info registers
info locals
info args

彙編
disassem $pc:反彙編當前函數。簡寫爲:disas $pc
si/stepi

多線程、進程nfo inferiors 進程info threads / thread n set scheduler-locking on:只有當前調試線程運行,其餘線程處於暫停狀態。

相關文章
相關標籤/搜索