project_settings.rst 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. Project settings
  2. ================
  3. Each project have a number of options that can be tweaked in the settings
  4. page of the project which is accessible to the person having full commits
  5. to the project.
  6. This page presents the different settings and there effect.
  7. `Always merge`
  8. ------------------------
  9. This Boolean enables or disables always making a merge commit when merging
  10. a pull-request.
  11. When merging a pull-request in pagure there are three states:
  12. * fast-forward: when the commits in the pull-request can be fast-forwarded
  13. pagure signals it and just fast-forward the commit, keeping the history linear.
  14. * merge: when the commits in the pull-request cannot be merged without a merge
  15. commit, pagure signals it and performs this merge commit.
  16. * conflicts: when the commits in the pull-request cannot be merged at all
  17. automatically due to one or more conflicts. Then pagure signals it and prevent
  18. merging.
  19. If the `Always merge` option is on, then the `fast-forward` option
  20. above is disabled in favor of the `merge` option.
  21. `Comment editing`
  22. --------------------------
  23. This Boolean enables or disables editing comments.
  24. After commenting on a ticket or a pull-request, the admins of the project
  25. and the author of the comment may be allowed to edit the comment.
  26. This allows them to adjust the wording or the style as they wish.
  27. .. note:: notification about a comment is only sent once with the original
  28. text, changes performed later will not trigger a new notification.
  29. Some project may not want to allow editing comments after they were posted
  30. and this setting allows turning it on or off.
  31. `Enforce signed-off commits in pull-request`
  32. -----------------------------------------------------
  33. This Boolean enables or disables checking for a 'Signed-off-by' line (case
  34. insensitive) in the commit messages of the pull-requests.
  35. If this line is missing, pagure will display a message near the `Merge`
  36. button, allowing project admin to request the PR to be updated.
  37. .. note:: This setting does not prevent commits without this 'signed-off-by'
  38. line to be pushed directly, it only work at the pull-request level.
  39. `Issue tracker`
  40. ------------------------
  41. This Boolean simply enables or disables the issue tracker for the project.
  42. So if you are tracking your ticket on a different system, you can simply
  43. disable reporting issue on pagure by un-checking this option.
  44. `Minimum score to merge pull-request`
  45. ----------------------------------------------
  46. This option can be used for project wishing to enforce having a minimum
  47. number of people reviewing a pull-request before it can be merged.
  48. If this option is enabled, anyone can vote in favor or against a pull-request
  49. and the sum of the votes in favor minus the sum of the votes against give
  50. the pull-request a score that should be equal or greater than the value
  51. entered in this option for the pull-request to be allowed to be merged.
  52. .. note:: Only the main comments (i.e.: not in-line) are taken into account
  53. to calculate the score of the pull-request.
  54. To vote in favor of a pull-request, use either:
  55. * ``+1``
  56. * ``:thumbsup:``
  57. To vote against a pull-request, use either:
  58. * ``-1``
  59. * ``:thumbsdown:``
  60. .. note:: Pull-Request not reaching the minimum score are not automatically
  61. merged
  62. .. note:: Anyone can vote on the pull-request, not only the contributors.
  63. .. note:: Only one vote per person is taken into account to compute the final
  64. score.
  65. `Only assignee can merge pull-request`
  66. -----------------------------------------------
  67. This option can be used for project wishing to institute a strong review
  68. workflow where pull-request are first assigned then merged.
  69. If this option is enabled, only the person assigned to the pull-request
  70. can merge it.
  71. `Project documentation`
  72. --------------------------------
  73. Pagure offers the option to have a git repository specific for the
  74. documentation of the project.
  75. This repository is then accessible under the ``Docs`` tab in the menu of the
  76. project.
  77. If you prefer to store your documentation elsewhere or maybe even within
  78. the sources of the project, you can disable the ``Docs`` tab by un-checking
  79. this option.
  80. `Pull requests`
  81. ------------------------
  82. Pagure offers the option to fork a project, make changes to it and then ask
  83. the developer to merge these changes into the project. This is similar to
  84. the pull-request mechanism on GitHub or GitLab.
  85. However, some projects may prefer receiving patches by email on their list
  86. or via another hosting platform or simply do not wish to use the
  87. pull-request mechanism at all. Un-checking this option will therefore
  88. prevent anyone from opening a pull-request against this project.
  89. .. note:: disabling pull-requests does *not* disable forking the projects.
  90. `Web-hooks`
  91. --------------------
  92. Pagure offers the option of sending notification about event happening on a
  93. project via [web-hooks|https://en.wikipedia.org/wiki/Webhook]. This option
  94. is off by default and can be turned on for a pagure instance in its
  95. configuration file.
  96. The URL of the web-hooks can be entered in this field.
  97. .. note:: See the ``notifications`` documentation to learn more about
  98. web-hooks in pagure and how to use them.
  99. `Tags`
  100. ------
  101. Pagure allows you to define "tags" that can be added to Issues. Tags are
  102. unique to each project, and they can only be defined in the project
  103. settings page. The Tag color can also be customized for a more robust
  104. visual representation of the tag.
  105. `Deploy keys`
  106. -------------
  107. Deploy keys are SSH keys that have access to pull/push only to a single
  108. project.
  109. Upon creation, admins can determine whether this particular key has read/write
  110. access or read-only.