git squash commits while retaining author's info : <p>My coworker (let's call him John here) and I work on a feature. and our working branch look like the following</p>

<pre><code>--o--o--o # this is develop branch
   \   o--o--o # this is John's branch
    \ /       \
     o----o--o--o--o--o--o # this is our cowork branch
      \                 /
       o--o--o--o--o--o  # this is my branch
</code></pre>

<p>We've finished our work and are ready to merge our cowork to develop branch.</p>

<p>At this point, there are a lot of commits in the cowork branch, which is not expected to be seen by other developers. So I want to squash those commits into one commit.</p>

<p>But after squashing (resolving some conflicts), I've found that the author info all direct to me, there is no John's info.</p>

<p>So my question here is that is there some way to retain both John's and my info while combining those commits together?</p>
