gitolite permissions: what does the 'C', 'D' and 'M' options do?





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







0















The documentation wrongfully (in my mind) assumes that the reader should be familiar with all the possible permissions combinations:




The full set of permissions, in regex syntax, is -|R|RW+?C?D?M?. This expands to one of -, R, RW, RW+, RWC, RW+C, RWD, RW+D, RWCD, or RW+CD, all but the first two optionally followed by an M. And by now you know what they all mean.




the problem is, All but the first 4 cases are not discussed in the document.



Can someone please explain what these additional 'C', 'D' and 'M' symbols mean?










share|improve this question





























    0















    The documentation wrongfully (in my mind) assumes that the reader should be familiar with all the possible permissions combinations:




    The full set of permissions, in regex syntax, is -|R|RW+?C?D?M?. This expands to one of -, R, RW, RW+, RWC, RW+C, RWD, RW+D, RWCD, or RW+CD, all but the first two optionally followed by an M. And by now you know what they all mean.




    the problem is, All but the first 4 cases are not discussed in the document.



    Can someone please explain what these additional 'C', 'D' and 'M' symbols mean?










    share|improve this question

























      0












      0








      0








      The documentation wrongfully (in my mind) assumes that the reader should be familiar with all the possible permissions combinations:




      The full set of permissions, in regex syntax, is -|R|RW+?C?D?M?. This expands to one of -, R, RW, RW+, RWC, RW+C, RWD, RW+D, RWCD, or RW+CD, all but the first two optionally followed by an M. And by now you know what they all mean.




      the problem is, All but the first 4 cases are not discussed in the document.



      Can someone please explain what these additional 'C', 'D' and 'M' symbols mean?










      share|improve this question














      The documentation wrongfully (in my mind) assumes that the reader should be familiar with all the possible permissions combinations:




      The full set of permissions, in regex syntax, is -|R|RW+?C?D?M?. This expands to one of -, R, RW, RW+, RWC, RW+C, RWD, RW+D, RWCD, or RW+CD, all but the first two optionally followed by an M. And by now you know what they all mean.




      the problem is, All but the first 4 cases are not discussed in the document.



      Can someone please explain what these additional 'C', 'D' and 'M' symbols mean?







      git gitolite






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jul 3 '14 at 3:19









      coderatchetcoderatchet

      3,87984491




      3,87984491
























          1 Answer
          1






          active

          oldest

          votes


















          1














          More on gitolite doc.



          C allows you to push but not create a ref, D allows you to rewind but not delete a ref, and M allows you to reject merge commits.




          Sometimes you want to allow people to push, but not create a ref. Or
          rewind, but not delete a ref. The C and D qualifiers help here.



          When a rule specifies RWC or RW+C, then rules that do NOT have the C
          qualifier will no longer permit creating a ref.



          Please do not confuse this with the standalone C permission that
          allows someone to create a repo



          When a rule specifies RWD or RW+D, then rules that do NOT have the D
          qualifier will no longer permit deleting a ref.



          Note: These two can be combined, so you can have RWCD and RW+CD as
          well.



          One very rare need is to reject merge commits (a commit series that is
          not a straight line of commits). The M qualifier helps here:



          When a rule has M appended to the permissions, rules that do NOT have
          it will reject a commit sequence that contains a merge commit (i.e.,
          they only accept a straight line series of commits).







          share|improve this answer


























          • thanks, It appears I was linked to a limited version of the document :)

            – coderatchet
            Jul 3 '14 at 3:42












          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f24544369%2fgitolite-permissions-what-does-the-c-d-and-m-options-do%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          More on gitolite doc.



          C allows you to push but not create a ref, D allows you to rewind but not delete a ref, and M allows you to reject merge commits.




          Sometimes you want to allow people to push, but not create a ref. Or
          rewind, but not delete a ref. The C and D qualifiers help here.



          When a rule specifies RWC or RW+C, then rules that do NOT have the C
          qualifier will no longer permit creating a ref.



          Please do not confuse this with the standalone C permission that
          allows someone to create a repo



          When a rule specifies RWD or RW+D, then rules that do NOT have the D
          qualifier will no longer permit deleting a ref.



          Note: These two can be combined, so you can have RWCD and RW+CD as
          well.



          One very rare need is to reject merge commits (a commit series that is
          not a straight line of commits). The M qualifier helps here:



          When a rule has M appended to the permissions, rules that do NOT have
          it will reject a commit sequence that contains a merge commit (i.e.,
          they only accept a straight line series of commits).







          share|improve this answer


























          • thanks, It appears I was linked to a limited version of the document :)

            – coderatchet
            Jul 3 '14 at 3:42
















          1














          More on gitolite doc.



          C allows you to push but not create a ref, D allows you to rewind but not delete a ref, and M allows you to reject merge commits.




          Sometimes you want to allow people to push, but not create a ref. Or
          rewind, but not delete a ref. The C and D qualifiers help here.



          When a rule specifies RWC or RW+C, then rules that do NOT have the C
          qualifier will no longer permit creating a ref.



          Please do not confuse this with the standalone C permission that
          allows someone to create a repo



          When a rule specifies RWD or RW+D, then rules that do NOT have the D
          qualifier will no longer permit deleting a ref.



          Note: These two can be combined, so you can have RWCD and RW+CD as
          well.



          One very rare need is to reject merge commits (a commit series that is
          not a straight line of commits). The M qualifier helps here:



          When a rule has M appended to the permissions, rules that do NOT have
          it will reject a commit sequence that contains a merge commit (i.e.,
          they only accept a straight line series of commits).







          share|improve this answer


























          • thanks, It appears I was linked to a limited version of the document :)

            – coderatchet
            Jul 3 '14 at 3:42














          1












          1








          1







          More on gitolite doc.



          C allows you to push but not create a ref, D allows you to rewind but not delete a ref, and M allows you to reject merge commits.




          Sometimes you want to allow people to push, but not create a ref. Or
          rewind, but not delete a ref. The C and D qualifiers help here.



          When a rule specifies RWC or RW+C, then rules that do NOT have the C
          qualifier will no longer permit creating a ref.



          Please do not confuse this with the standalone C permission that
          allows someone to create a repo



          When a rule specifies RWD or RW+D, then rules that do NOT have the D
          qualifier will no longer permit deleting a ref.



          Note: These two can be combined, so you can have RWCD and RW+CD as
          well.



          One very rare need is to reject merge commits (a commit series that is
          not a straight line of commits). The M qualifier helps here:



          When a rule has M appended to the permissions, rules that do NOT have
          it will reject a commit sequence that contains a merge commit (i.e.,
          they only accept a straight line series of commits).







          share|improve this answer















          More on gitolite doc.



          C allows you to push but not create a ref, D allows you to rewind but not delete a ref, and M allows you to reject merge commits.




          Sometimes you want to allow people to push, but not create a ref. Or
          rewind, but not delete a ref. The C and D qualifiers help here.



          When a rule specifies RWC or RW+C, then rules that do NOT have the C
          qualifier will no longer permit creating a ref.



          Please do not confuse this with the standalone C permission that
          allows someone to create a repo



          When a rule specifies RWD or RW+D, then rules that do NOT have the D
          qualifier will no longer permit deleting a ref.



          Note: These two can be combined, so you can have RWCD and RW+CD as
          well.



          One very rare need is to reject merge commits (a commit series that is
          not a straight line of commits). The M qualifier helps here:



          When a rule has M appended to the permissions, rules that do NOT have
          it will reject a commit sequence that contains a merge commit (i.e.,
          they only accept a straight line series of commits).








          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 23 '18 at 15:29

























          answered Jul 3 '14 at 3:40









          MakotoMakoto

          83.2k18130181




          83.2k18130181













          • thanks, It appears I was linked to a limited version of the document :)

            – coderatchet
            Jul 3 '14 at 3:42



















          • thanks, It appears I was linked to a limited version of the document :)

            – coderatchet
            Jul 3 '14 at 3:42

















          thanks, It appears I was linked to a limited version of the document :)

          – coderatchet
          Jul 3 '14 at 3:42





          thanks, It appears I was linked to a limited version of the document :)

          – coderatchet
          Jul 3 '14 at 3:42




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f24544369%2fgitolite-permissions-what-does-the-c-d-and-m-options-do%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          這個網誌中的熱門文章

          Xamarin.form Move up view when keyboard appear

          Post-Redirect-Get with Spring WebFlux and Thymeleaf

          Anylogic : not able to use stopDelay()