<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Hi,</p>
    <p>I understand the reasoning about easily managing commit
      permissions.</p>
    <p>A way to achieve that flexibility with git (and the typical
      functions in web-based Git repo browsers) is the following:<br>
      - Put the more highly protected parts of the source tree in
      separate Git repositories and link them in the master repo as "sub
      modules" (see <a
        href="https://git-scm.com/book/en/v2/Git-Tools-Submodules">https://git-scm.com/book/en/v2/Git-Tools-Submodules</a>).
      You can still clone the whole source tree easily using "git clone
      --recurse-submodules".<br>
      - Only give people developer access to the master repo, but not
      the "protected" sub modules.<br>
      - Generally: Protect the master branch(es) (then all contributions
      are subject of review / merge request) and only give selected
      people maintainer rights (the right to merge or push to master).<br>
      <br>
      This is how we do it at work. It works well! :)<br>
      <br>
      Best regards,<br>
      Tobias<br>
    </p>
    <div class="moz-cite-prefix">On 2/9/20 5:08 AM, Greg Hellings wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAHxvOVJn0S-=O0crm1tWSFT4deAt6egjtxvFE=_d=-d8fDw6WA@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div dir="ltr"><br>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Sat, Feb 8, 2020 at 1:49
            PM Tobias Klein &lt;<a href="mailto:contact@tklein.info"
              moz-do-not-send="true">contact@tklein.info</a>&gt; 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">Hi,<br>
            <br>
            Have you guys been thinking about migrating the Sword
            sources to Git?<br>
          </blockquote>
          <div><br>
          </div>
          <div>We have this discussion every year.</div>
          <div> <br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex">
            I think this would be an enabler for better collaboration,
            considering <br>
            the merge capabilities of Git and for example the nice
            merge/pull <br>
            request based review functionalities in GitLab (or GitHub).<br>
          </blockquote>
          <div><br>
          </div>
          <div>Every time, this gets lots of people voting "yes"!</div>
          <div><br>
          </div>
          <div>Every time the short answer is the same:</div>
          <div>Troy doesn't want it moved. So it is not going to get
            moved.</div>
          <div><br>
          </div>
          <div>The longer answer also remains the same:</div>
          <div>Git has no simple method, in a similar vein to SVN, to
            allow Troy to easily manage commit rights to particular
            portions of the repository. He wants to keep tight control
            over who can commit where (e.g. I can commit anywhere under
            the "bindings" or "cmake" directories or to any file named
            "CMakeLists.txt", but nowhere else in the repo) and does not
            believe the code review process in git front-ends is
            sufficient for this. Writing a git hook to ensure this is
            not difficult, but also not completely trivial. In SVN it's
            a very simple matter. It's not a lack of familiarity with
            git (Troy develops Bishop within a git repository and seems
            a relatively intelligent software developer overall). It's
            literally this one missing feature, at least that's the one
            impediment he's spoken about in the past.</div>
          <div><br>
          </div>
          <div>So:</div>
          <div>* Would git greatly increase the ability of people to
            contribute to Sword? Yes</div>
          <div>* Would Troy host Sword's canonical repository somewhere
            like Github? Probably not</div>
          <div>* Is Sword going to move to git without, at the very
            least, a solution to this directory write problem? Nope</div>
          <div>* Is that problem surmountable? Yes, but no one has
            stepped up and implemented it in a githook, and SVN is
            working fine in Troy's view to not encourage him to write it
            himself.</div>
          <div><br>
          </div>
          <div>--Greg<br>
          </div>
          <div><br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex">
            <br>
            Best regards,<br>
            Tobias<br>
            <br>
            <br>
            _______________________________________________<br>
            sword-devel mailing list: <a
              href="mailto:sword-devel@crosswire.org" target="_blank"
              moz-do-not-send="true">sword-devel@crosswire.org</a><br>
            <a
              href="http://www.crosswire.org/mailman/listinfo/sword-devel"
              rel="noreferrer" target="_blank" moz-do-not-send="true">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br>
            Instructions to unsubscribe/change your settings at above
            page<br>
          </blockquote>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
sword-devel mailing list: <a class="moz-txt-link-abbreviated" href="mailto:sword-devel@crosswire.org">sword-devel@crosswire.org</a>
<a class="moz-txt-link-freetext" href="http://www.crosswire.org/mailman/listinfo/sword-devel">http://www.crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page</pre>
    </blockquote>
  </body>
</html>