主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ
書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。
2023/02/08
なんとなく git/git をソースからビルドしてデバッグすることになりました。
README や Wiki が古かったりして、結構詰まったので、やり方。
まず、 Visual Studio 2022 (or 2019) で、 git/git をクローンした場所をフォルダーとして開きます。
開くと、「CMakeLists.txt
を検出したから、適当に選んでね!」って言われるので、以下のディレクトリにあるものを選択します。
git/contrib/buildsystems/CMakeLists.txt
設定を開いてしまった場合は、以下のように記述すれば良い。
{
"enableCMake": true,
"sourceDirectory": "contrib/buildsystems"
}
選ぶと、 Visual Studio が裏で良い感じにセットアップしてくれる。割と時間かかるので注意。
セットアップが終わったら、いつも通り上の実行ボタンに git.exe
が表示されるので、そこからデバッグできます。
ただし、このままだと git.exe
がそのまま実行されるだけなので、ヘルプメッセージのデバッグでもしない限りは無意味です。
ということで、次は起動設定を変更します。
起動設定は、 Debug > Debug and Launch Settings for git
から編集できます。
設定の実態は launch.vs.json
なので、それを元に設定します。
例えば、 git add
についてデバッグしたければ、したのように設定してあげれば、 git add
の動作についてデバッグできるようになります。
{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "default",
"project": "contrib\\buildsystems\\CMakeLists.txt",
"projectTarget": "git.exe",
"name": "git.exe"
},
{
"type": "default",
"project": "contrib\\buildsystems\\CMakeLists.txt",
"projectTarget": "git.exe",
"name": "git add",
"args": [
"-C",
"M:\\repos\\github.com\\mika-f\\git",
"add",
"."
]
}
]
}
MS Docs にドキュメントがあるんだけど、微妙に嘘ついていたりするので、そこだけ注意。
なんか一部設定項目が効いていなかったりするので、それは良い感じにする (cwd
とか program
とかは Local Machine だと効いていないっぽい)。
ということで、メモでした。