Re: Print last time and committer a file was touched by for a whole repo

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

 



Thanks everyone who responded.  I ended up doing

    find . -path "./.git*" -prune -o -print -exec git log -n 1 -- '{}'
\; > assets.txt

Little roundabout but seems effective.

On Thu, Jul 1, 2010 at 4:12 PM, Jakub Narebski <jnareb@xxxxxxxxx> wrote:
> Tim Visher <tim.visher@xxxxxxxxx> writes:
>
>> I need to get a listing of the entire contents of my current repo (as
>> in, I don't need deleted files or anything like that, just the current
>> snapshot) with the time the file was committed and who committed it.
>>
>> Thoughts on how to do that?
>
> There does not exist a single git command that would do what you want.
> You would need to use 'git log -1 --follow' for each file in current
> snapshot ('git ls-tree -r HEAD').  IIRC there is some example how to
> do that in GitFaq or GitTips on git wiki (http://git.wiki.kernel.org).
>
> Perhaps in the future 'git blame <directory>' would provide such
> output, or its equivalent (tree blame).

That'd be cool.

> By the way, what do you ned this for?  Git versions whole project at
> once, not individual files.  Is it some legacy from CVS?

Ummm...  Little embarrassing but this is apparently a requirement for
my company.  Every few years they ask for a 'listing of all software
assets, when they were last touched, who last touched them, and what
version of software they were touched for.'  Generous assumptions is
that they're probing us for how effectively we can lay our hands on
this information.  Cynics would say that someone somewhere decided one
day that it would be a good idea to have an __Excel Spreadsheet__
(yep, that's what it goes into) listing every file that every software
project everywhere in the company has, and that now people do it
because it's on a check list.

Anywho... Hooray for `find -exec`.

-- 

In Christ,

Timmy V.

http://burningones.com/
http://five.sentenc.es/ - Spend less time on e-mail
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]