This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Action stamps


On 08/29/2015 10:58 AM, Dominique d'Humières wrote:
For Jakub or anyone else wanting a key to associate a file with a commit, they can decide for themselves
what date format they want to use and whether to bother with the user id. I would think that if he is only
interested in commits on the trunk (and so should use log --first-parent), the timestamp is sufficient.

I share Jakub’s concern about having access to an increasing labeling of the revisions. What would be the replacement of « svn update -r xxxx »?

Given git aliases:

        stamp = show -s --format='%cI!%ce'
        scommit = "!f(){ d=${1%%!*}; a=${1##*!}; arg=\"--until=$d -1\"; if [ $a != $1 ]; then arg=\"$arg --committer=$a\"; fi; shift; git rev-list $arg ${1:+\"$@\"}; }; f"
        smaster = "!f(){ git scommit \"$1\" trunk --first-parent; }; f"
        shs = "!f(){ git show $(git smaster $1); }; f"
        slog = "!f(){ s=$1; shift; git log $(git smaster $s) $*; }; f"
        sco = "!f(){ git checkout $(git smaster $1); }; f"

and an action stamp 2015-08-20T20:55:15Z!jason, then

git sco 2015-08-20T20:55:15Z\!jason

will check out the (most recent) commit with that stamp. It also works with just the timestamp.

A timestamp gives you a simple increasing (though sparse) label, though it might not always be unique; when I locally rebase several patches I sometimes get two or three with the same timestamp, which I expect to be preserved if I push them upstream.

Jason


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]