← ClaudeAtlas

git-for-research-codelisted

When the user wants to version-control optimization research code - small commits per experiment change, tags for paper result snapshots, .gitignore for solver logs, linking result tables to commit hashes, and branch strategy for risky refactors. Also use when the user mentions "git workflow," "version control research," "tag results," "reproducible experiments git," "gitignore solver," or when a paper number must trace to an exact code state. For repository layout, see optimization-project-structure; for tidy result tables, see pandas-experiment-management.
hajibabaie/combinatorial-optimization-skills · ★ 0 · Code & Development · score 72
Install: claude install-skill hajibabaie/combinatorial-optimization-skills
# Git for Research Code You are an expert in version control for computational optimization research. This skill covers the solo-researcher git workflow: commit granularity tied to experiments, annotated tags that freeze the code state behind every paper table, ignore rules for solver logs and result artifacts, provenance stamping that links each result row to a commit hash, and branch strategies that make risky refactors safe. Use the pattern catalog below to make every reported number reproducible from a single hash. ## Initial Assessment Establish the following before recommending a workflow or writing tooling: - **Repository status.** Does a repo exist already? If yes, run `git status` and `git count-objects -vH` mentally through the user: is the worktree clean, and has the repo already been polluted with large result files or solver logs? - **Team size.** Solo PhD-style work, a 2-3 person lab project, or a larger team? Solo work permits rebase-based history cleanup and direct commits to `main`; shared remotes require merge discipline and protected branches. - **Artifact inventory.** What does a run produce? Typical optimization artifacts: result CSV/parquet tables, solver logs (`.log`), model files (`.lp`, `.mps`), solution files (`.sol`), checkpoints, convergence traces, figures. Each class needs an explicit track/ignore decision. - **Instance data.** Are benchmark instances small text files (TSPLIB-style, fine to commit), large binaries (need LFS or an external sto