emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: literate programming, development log -- ideas? (ominbus reply)


From: Tim Cross
Subject: Re: literate programming, development log -- ideas? (ominbus reply)
Date: Sun, 13 Jun 2021 10:31:31 +1000
User-agent: mu4e 1.5.13; emacs 27.2.50

Eric S Fraga <e.fraga@ucl.ac.uk> writes:

> On Tuesday,  8 Jun 2021 at 20:15, Greg Minshall wrote:
>> Eric, when you use something RCS-like as your version control system, i
>> assume that makes grepping to find some old note easy enough.  but,
>> these days i tend to use git.  when (assuming) you use git, do you have
>> some easy way to say "well, i had this code that looked sort of like
>> this... where was it?"?  (sorry, that's really a git question, but ...)
>
> Yes, for SRC (RCS-like), it's straightforward to go into the ,v file and
> search.  For git, I try to make sure the commit message is as
> informative as necessary and then search on the log.  The alternative is
> git-timemachine which allows me to go back and forward in time looking
> at the buffer.
>
> Having said this, I don't often find myself looking for anything in the
> history.  For major alternatives that might come up during the project,
> I use branches.  But only with git as I have never figured out how to
> get a branch set up in src.

Similar here as well. There are some good git tools, like timemachine
and git blame and having good commit messages is crucial. However, it
really depends on what your use case is. Other suggestions, like
maintaining a 'date tree' with sections under that can be really useful
for some scenarios. Marking some sections as archived can also be
useful.

A lot depends on whether what you want is an org file which documents
the current state of play or one which is more similar to a lab book
which contains a more chronological type evolution of ideas and
experiments. I often setup completely separate org 'projects' which will
consist of multiple org files and will move things between different
files as the project evolves. In some extreme cases, I may even have
multiple git branches and will often use git tags to mark specific
'milestones'.

How I decide whether to use a date tree with notes, branches, tags,
archive sections/files, separate org files etc is typically determined
by how likely I might be to want to review or go back through previous
work/experiments/decisions. Working this out can take a bit of time and
experimentation, but in general, I rarely need to checkout old versions
or even open archive trees/files. I do have a journal file for each
major project which has lots of ideas, random thoughts and even small
experiments (with source blokcs) and I tend ot have a large 'reference'
file which contains notes and links to external references and then a
'main' org file, which reflects the current state. 

-- 
Tim Cross



reply via email to

[Prev in Thread] Current Thread [Next in Thread]