3 回答

TA貢獻1877條經驗 獲得超6個贊
調試
Git有一套相當完整的跟蹤嵌入,您可以使用它來調試您的git問題。
要打開它們,您可以定義以下變量:
GIT_TRACE 一般的痕跡,
GIT_TRACE_PACK_ACCESS 用于跟蹤packfile訪問,
GIT_TRACE_PACKET 用于網絡操作的數據包級跟蹤,
GIT_TRACE_PERFORMANCE 用于記錄性能數據,
GIT_TRACE_SETUP 有關發(fā)現與其交互的存儲庫和環(huán)境的信息,
GIT_MERGE_VERBOSITY 用于調試遞歸合并策略(值:0-5),
GIT_CURL_VERBOSE用于記錄所有curl消息(相當于curl -v),
GIT_TRACE_SHALLOW 用于調試淺層存儲庫的獲取/克隆。
可能的值包括:
true,1或2寫信給標準錯誤,
從/跟蹤輸出到指定文件開始的絕對路徑。
SSH
對于SSH問題,請嘗試以下命令:
echo 'ssh -vvv "$*"' > ssh && chmod +x ssh
GIT_SSH="$PWD/ssh" git pull origin master
或用于ssh驗證您的憑據,例如
ssh -vvvT git@github.com
或通過HTTPS端口:
ssh -vvvT -p 443 git@ssh.github.com
注意:減少數量-v以減少詳細程度。
例子
$ GIT_TRACE=1 git status
20:11:39.565701 git.c:350 trace: built-in: git 'status'
$ GIT_TRACE_PERFORMANCE=$PWD/gc.log git gc
Counting objects: 143760, done.
...
$ head gc.log
20:12:37.214410 trace.c:420 performance: 0.090286000 s: git command: 'git' 'pack-refs' '--all' '--prune'
20:12:37.378101 trace.c:420 performance: 0.156971000 s: git command: 'git' 'reflog' 'expire' '--all'
...
$ GIT_TRACE_PACKET=true git pull origin master
20:16:53.062183 pkt-line.c:80 packet: fetch< 93eb028c6b2f8b1d694d1173a4ddf32b48e371ce HEAD\0multi_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag multi_ack_detailed symref=HEAD:refs/heads/master agent=git/2:2.6.5~update-ref-initial-update-1494-g76b680d
...
- 3 回答
- 0 關注
- 743 瀏覽
添加回答
舉報