Skip to content

Debugging Tool Git

Mainkill1 edited this page Sep 21, 2026 · 1 revision

Git

← Debugging Tools and Commands

Git identifies the source state used for a build. It is the first identity check for every trace, release, benchmark, and diagnostic executable.

Property Details
Supported OS Windows, Linux, macOS
Install Download Git or install it with the platform package manager.
Verify git --version
Primary output See the workflow below.

When to use it

Useful identity commands:

git rev-parse HEAD
git rev-parse HEAD^{tree}
git status --short
git diff --stat <baseline>..<candidate>
git diff --name-only <baseline>..<candidate>

Read the output

  • HEAD identifies the exact commit checked out.
  • HEAD^{tree} identifies the source tree independent of commit metadata.
  • A clean git status --short means the build did not silently include uncommitted source changes.
  • git diff --name-only is useful when a supposedly narrow experiment unexpectedly touches unrelated implementation files.

Do not write simply main or release build into evidence. Record the exact commit.

Boundaries and common mistakes

A commit alone does not identify an executable. Compiler version, flags, dependencies, LTO, target ISA, link order, and uncommitted files can change the binary. Pair Git identity with artifact hashes.

Do not reset or clean a working tree merely to make evidence look tidy. Record a dirty tree, inspect it, and build from an isolated branch/worktree when needed.

Evidence to retain

  • Tool name and exact version.
  • Source commit/tree and executable SHA-256.
  • The complete command or saved profile used.
  • Input artifact hashes and the explicitly selected time or address range.
  • Raw output plus any derived report; do not retain only a screenshot or conclusion.
  • Admission failures, warnings, dropped events, incomplete rows, or unsupported operations.

Official references

Related xemu guides

Clone this wiki locally