<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <br>
    <br>
    <div class="moz-cite-prefix">On 2020-05-04 6:41 μ.μ., Ryan Sleevi
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CACvaWvaAaj-Y2Ex1SeiL1KMtx1c3T0Gc03vNkOxv_cj7+sNX2Q@mail.gmail.com">
      <div dir="ltr"><br>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Mon, May 4, 2020 at 3:13 AM
          Dimitris Zacharopoulos (HARICA) <<a
            href="mailto:dzacharo@harica.gr" moz-do-not-send="true">dzacharo@harica.gr</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div> <br>
            Once again, I am either not following our documented
            procedure correctly or there is something wrong with the
            steps.<br>
            <br>
            Following instructions listed in <a
              href="https://wiki.cabforum.org/github_redline_guide"
              target="_blank" moz-do-not-send="true">https://wiki.cabforum.org/github_redline_guide</a>,
            I started my process by syncing master of <a
              href="https://github.com/dzacharo/documents"
              target="_blank" moz-do-not-send="true">https://github.com/dzacharo/documents</a>
            (my own fork) with the official repo master (<a
              href="https://github.com/cabforum/documents"
              target="_blank" moz-do-not-send="true">https://github.com/cabforum/documents</a>).<br>
            <br>
            I did this by following the instructions of "Prerequisites"
            section 2. The result of this was <a
              href="https://github.com/dzacharo/documents/pull/1"
              target="_blank" moz-do-not-send="true">https://github.com/dzacharo/documents/pull/1</a>
            which was merged to my local master.<br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div>It looks like you didn't click "Merge Pull Request" but did
          "Squash and Merge"</div>
        <div><br>
        </div>
        <div>"Merge Pull Request" is supposed to be the default, based
          on <a
href="https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request"
            moz-do-not-send="true">https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request</a> ,
          but Step 2 on the wiki didn't call that out. I've updated as
          such.</div>
        <div><br>
        </div>
        <div>This is why it still says you're "50 commits behind master"
          - because you're not actually in sync with master, you
          diverged 50 commits ago by squashing those 50 commits into a
          single commit. I've also updated the Wiki to reflect that it's
          a Bad Thing if you don't see that.</div>
        <div> </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div> Then I created a branch <a
              href="https://github.com/dzacharo/documents/tree/update-bylaws-to-v2.3"
              target="_blank" moz-do-not-send="true">https://github.com/dzacharo/documents/tree/update-bylaws-to-v2.3</a><br>
            <br>
            Then I made several commits updating the Bylaws on this
            branch and created a new pull request against my own repo (<a
              href="https://github.com/dzacharo/documents/pull/2"
              target="_blank" moz-do-not-send="true">https://github.com/dzacharo/documents/pull/2</a>).<br>
            <br>
            Now it's time to create an immutable redline so I followed 
            the compare instructions, using the last commit of the
            official repo (<a
href="https://github.com/cabforum/documents/commit/fc63be73323195abc4e462708ca0385e37b7043d"
              target="_blank" moz-do-not-send="true">https://github.com/cabforum/documents/commit/fc63be73323195abc4e462708ca0385e37b7043d</a>)
            and the last commit from my local branch with the bylaws
            changes (<a
href="https://github.com/dzacharo/documents/commit/a94d136c6ddbd0024e9bdc70785aa71f1e2f6753"
              target="_blank" moz-do-not-send="true">https://github.com/dzacharo/documents/commit/a94d136c6ddbd0024e9bdc70785aa71f1e2f6753</a>)<br>
          </div>
        </blockquote>
        <div><br>
        </div>
        <div>Because of the above, you effectively "forked" from the
          official repo at the point you did your merge - to the
          official Repo, it's a series of several distinct commits,
          while in your Repo, it's only a single commit.</div>
        <div><br>
        </div>
        <div>Now, while the effective state of the repos (the last
          commit of official, the last commit *before* your changes)
          should be identical in content, they're not identical in
          hashes, hence the issue you see. However, if they really are
          identical (and I've not confirmed), then the answer is make
          your immutable diff from (the last commit from the official
          repo in *your* branch) to (the last commit of your changes).</div>
        <div><br>
        </div>
        <div>This is <a
href="https://github.com/cabforum/documents/compare/740e4b1be75a2c3468c8448cb7cdf9dff10bc69f..a94d136c6ddbd0024e9bdc70785aa71f1e2f6753#diff-c2f0349076f544cc0e9f059f30f21a85"
            moz-do-not-send="true">https://github.com/cabforum/documents/compare/740e4b1be75a2c3468c8448cb7cdf9dff10bc69f..a94d136c6ddbd0024e9bdc70785aa71f1e2f6753#diff-c2f0349076f544cc0e9f059f30f21a85</a> (that
          is, starting with your <a
href="https://github.com/dzacharo/documents/commit/740e4b1be75a2c3468c8448cb7cdf9dff10bc69f"
            moz-do-not-send="true">https://github.com/dzacharo/documents/commit/740e4b1be75a2c3468c8448cb7cdf9dff10bc69f</a> )</div>
        <div><br>
        </div>
        <div>That's still immutable, and in theory can be cleanly
          applied against upstream.</div>
        <div><br>
        </div>
        <div>This is super-easy to fix on the command-line, similar to
          Doug's change (as was before), because the <a
href="https://github.com/cabforum/documents/compare/740e4b1be75a2c3468c8448cb7cdf9dff10bc69f..a94d136c6ddbd0024e9bdc70785aa71f1e2f6753.patch"
            moz-do-not-send="true">patch file</a> can be easily
          downloaded and applied to a 'clean' repository to create the
          pull request.</div>
        <div><br>
        </div>
        <div>It's unclear what you'd like to do here, so I'm holding off
          on offering solutions. I could easily create a PR with "just"
          your commits in my branch, I could help you get your 'master'
          repository back to a clean slate and rebase your branch on-top
          of it (a bit more involved, but preserves exact commits), or
          you could just create a second fork from a clean slate and
          apply the delta of changes. Lots of options here, but in all
          scenarios, all of your data is preserved, nothing is lost or
          messed up, and we've got an unambiguous recoverable trail of
          your edits :)</div>
      </div>
    </blockquote>
    <br>
    Thank you so much for the explanation. Makes a lot more sense now. I
    will update the instructions to highlight that we should not "squash
    and merge" when we sync between repos. However, but we should
    "squash and merge" when merging the final pull request to master,
    right?<br>
    <br>
    Since we have an immutable version and the ballot is now in the
    discussion period, I think I will leave it as is, and if there is
    feedback that will result in making further edits (which will
    inevitably produce a different GitHub redline URL, I will create a
    second fork from the official repo, apply the patch file, add the
    extra commits related to the discussion period and create a new
    immutable redline.<br>
    <br>
    Does this seem like a good plan?<br>
    <br>
    <br>
    Dimitris.<br>
    <br>
  </body>
</html>