开发者

git log over restricts output when using --follow? [closed]

开发者 https://www.devze.com 2023-01-14 19:23 出处:网络
This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time,or an extraordinarily narrow situation that is not generally applic
This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable, visit the help center. Closed 10 years ago.

On the following server:

gsl@aragorn:~/gitTest> uname -a
Linux aragorn 2.6.31.12-0.2-default #1 SMP 2010-03-16 21:25:39 +0100 i686 i686 i386 GNU/Linux

gsl@aragorn:~/gitTest> cat /etc/SuSE-release

openSUSE 11.2 (i586)
VERSION = 11.2
开发者_如何转开发

I use the following git:

gsl@aragorn:~/gitTest> git --version

git version 1.7.2.2

I get (with a bash alias of gitnp='git --no-pager'):

(1)

gsl@aragorn:~/gitTest> gitnp log --pretty=oneline junk.txt
500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3
594ceed7a0fb35a860a6e2cb913d5398f09a861f 1st mod junk.txt
df271b2ebd5801bd8d827b0630577cad51c40896 initial junk.txt

(2)

gsl@aragorn:~/gitTest> gitnp log --follow --pretty=oneline junk.txt
500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3
594ceed7a0fb35a860a6e2cb913d5398f09a861f 1st mod junk.txt
df271b2ebd5801bd8d827b0630577cad51c40896 initial junk.txt

(3)

gsl@aragorn:~/gitTest> gitnp log -2 --follow --pretty=oneline junk.txt
500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3

(4)

gsl@aragorn:~/gitTest> gitnp log -2 --pretty=oneline junk.txt
500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3
594ceed7a0fb35a860a6e2cb913d5398f09a861f 1st mod junk.txt

Why don't I see 2 output lines for item (3) above?

-=> Gregg <=-


I upgraded to the latest and greatest, but still have the same problem:

gsl@aragorn:~/gitTest> git --version

git version 1.7.2.3

gsl@aragorn:~/gitTest> gitnp log -2 --follow --pretty=oneline junk.txt 500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3

gsl@aragorn:~/gitTest> gitnp log --follow --pretty=oneline junk.txt 500e8791578c5baf7a139d4997841769a995ac6b mod of junk and junk3 594ceed7a0fb35a860a6e2cb913d5398f09a861f 1st mod junk.txt df271b2ebd5801bd8d827b0630577cad51c40896 initial junk.txt

So is there another non-graphical reliable git way to obtain this information?


Did you try with git1.7.2.3?

  • "git log --follow -M -p" was seriously broken in 1.7.2, reporting assertion failure.

  • Running "git log" with an incorrect option started pager nevertheless, forcing the user to dismiss it.

I am not sure why the combination of '--follow -2' would limit the output to only one line.
It is however interesting to read what Linux has to say when --follow was introduced:

--follow is a total hack, meant to just satisfy ex-SVN users who never knew anything about things like parenthood or nice revision graphs anyway.

It's not totally fundamental, but the current implementation of "--follow" is really a quick preprocessing thing bolted onto the revision walking logic, rather than being anything really integral.

It literally was designed as a "SVN noob" pleaser, not as a "real git functionality" thing.
The idea was that you'd get away from the (broken) mindset of thinking that renames matter in the big picture.

0

精彩评论

暂无评论...
验证码 换一张
取 消