See CTB's Mar 2016 workshop on "repeatability" - in sum,
-
write down and save the set of software loading or installation commands you use;
-
you should always use version control (e.g. git) to track any custom processing scripts or commands;
-
record any long-running scripts or commands that you use, and make it easy to (re)run them, using either shell scripts or 'make' or some other workflow system;
-
get as close to automating your data viz and figure generation as you can with (e.g.) RMarkdown or Jupyter Notebook;
Among other things, this provides a set of artifacts that can be sent to your advisor, provided to your collaborators and (ultimately) published with your publication. Plus you won't have to remember what you did - you'll have it written down!