Thread (5 messages) flat view 5 messages, 3 authors, 2016-06-15

Re: git log --follow doesn't follow a rename over a merge

From: Jeff King <hidden>
Date: 2016-06-15 22:51:29

On Thu, Jun 16, 2011 at 10:59:23AM -0700, Junio C Hamano wrote:
quoted
Doesn't:

  git log -- plugins/org.eclipse.dd.dsf.debug/src/org/eclipse/dd/dsf/debug/service/IBreakpoints.java

do that?
If the file emerged in one branch (either the primary or a side branch) in
the past as a failed experiment and then got removed before merging back,
i.e.

   past ---o----o-----o-----o-----o-----o-----o-----o--- now
            \                          /
             o----*----o----o----*----o
                  ^added         ^removed

then the merges are simplified away and you would not see it.
Ah, right. The default simplification so often does what I want that I
forget there are cases it can miss.
Perhaps simplify-merges option may help.
This test case shows full-history helping:

-- >8 --
commit() {
  echo $1 >$1 && git add $1 && git commit -m $1
}

git init repo &&
cd repo &&
commit one &&
commit two &&
commit three &&
git checkout -b side HEAD^ &&
commit four &&
commit five &&
git rm five && git commit -m "remove five" &&
commit six &&
git checkout master &&
git merge side &&
echo "==> default log (shows nothing)" &&
git --no-pager log -- five
echo "==> full-history" &&
git --no-pager log --full-history -- five
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help