Adding `git diff` to run info

Git is a de-facto CVS. While Guild copies all the source code it is often useful to know what are the differences between certain experiment’s code and it’s committed version. I suggest saving git diff together with the git commit hash in the Guild run. This will provide ability to easily and quickly reproduce the original settings for selected experiment and commit it to git using apply patch.

You can address this use case using the --working option to guild diff. This compares a run source code to your project source. You can use this to merge differences between the applicable run and your source code.

This is intentionally not automatic. It’s a delicate decision to modify code and Guild relies on you to modify your source.

Guild does save the most recent Git commit hash with the run. You can see this using guild runs info under the vcs_commit attributes. If the working tree has changed since the last commit, Guild shows as asterisk by the commit to indicate that the source code for the run is not the code associated with the commit.

If you want to perform the merge operation you’re describing, you’d commit or otherwise stash your current changes, check out the specified Git commit and then merge the run source code using --working.

Sure, this will do. Thank you!