RE: "git log" does not display refs info when executed via C# Process class on Windows
- From
- Cliff Schomburg <clisc@microsoft.com>
- Date
- Aug 9, 2019, 21:34 UTC
- Message-ID
- <BN8PR21MB11566C135B1326AF1B45E4D8B7D60@BN8PR21MB1156.namprd21.prod.outlook.com>
- In-Reply-To
- <20190809195031.GK20404@szeder.dev>
Strangely, when I run this command:
Git log origin/master --pretty=oneline --decorate -1
I get the format I want from STDOUT. However, when I try to filter it to show only the tag refs:
Git log origin/master --pretty=oneline --decorate --decorate-refs=^tag* -1
No refs are returned to standard output again. Only on the command line.
Does --decorate-refs not return to STDOUT?
Thanks, Cliff
-----Original Message----- From: SZEDER Gábor <szeder.dev@gmail.com> Sent: Friday, August 9, 2019 3:51 PM To: Cliff Schomburg <clisc@microsoft.com> Cc: git@vger.kernel.org Subject: Re: "git log" does not display refs info when executed via C# Process class on Windows
On Fri, Aug 09, 2019 at 07:36:19PM +0000, Cliff Schomburg wrote:
Show 10 quoted lines
> I have an open Git for Windows issue here: > https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgith > ub.com%2Fgit-for-windows%2Fgit%2Fissues%2F2285&data=02%7C01%7Cclis > c%40microsoft.com%7C17689ee8d32d48528c3208d71d02d8d5%7C72f988bf86f141a > f91ab2d7cd011db47%7C1%7C0%7C637009771013658738&sdata=PKPdRI0mC65Lx > 2J5etYnp0fyzsk%2BXSGzGBWa12BLKEE%3D&reserved=0 > > "git log" works as expected from the command prompt. But when I execute it via C# Process class and read from Standard Output, the refs are missing. > > Is anyone familiar with this issue? Any idea why the output to CMD and STDOUT would be different?
Decorations, like color and refs pointing to a commit, are for humans, and humans read the terminal. If the command's output doesn't go to a terminal, then no such decorations are shown by default.
Try invoking 'git log --decorate'; or, better yet, use your custom '--format=', especially if you intend to parse the output,