loggable_activity 0.5.4 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +10 -0
  3. data/CHANGELOG.md +12 -3
  4. data/GETTING-STARTED.md +61 -0
  5. data/README.md +4 -7
  6. data/app/views/loggable_activity/activities/_activities.html.slim +6 -6
  7. data/docker-compose.yml +27 -0
  8. data/docs/CHANGELOG_md.html +318 -0
  9. data/docs/CHEAT_SHEET_md.html +168 -0
  10. data/docs/CODE_OF_CONDUCT_md.html +250 -0
  11. data/docs/CreateLoggableActivities.html +175 -0
  12. data/docs/CreateLoggableActivityTables.html +173 -0
  13. data/docs/GETTING-STARTED_md.html +211 -0
  14. data/docs/Gemfile.html +153 -0
  15. data/docs/Gemfile_lock.html +438 -0
  16. data/docs/LoggableActivity/ActivitiesController.html +160 -0
  17. data/docs/LoggableActivity/ActivitiesHelper.html +158 -0
  18. data/docs/LoggableActivity/Activity.html +565 -0
  19. data/docs/LoggableActivity/ApplicationController.html +97 -0
  20. data/docs/LoggableActivity/ApplicationHelper.html +91 -0
  21. data/docs/LoggableActivity/ApplicationJob.html +97 -0
  22. data/docs/LoggableActivity/ApplicationMailer.html +97 -0
  23. data/docs/LoggableActivity/ApplicationRecord.html +97 -0
  24. data/docs/LoggableActivity/Configuration.html +237 -0
  25. data/docs/LoggableActivity/ConfigurationError.html +142 -0
  26. data/docs/LoggableActivity/CurrentActor.html +166 -0
  27. data/docs/LoggableActivity/DataOwner.html +138 -0
  28. data/docs/LoggableActivity/Encryption.html +321 -0
  29. data/docs/LoggableActivity/EncryptionError.html +142 -0
  30. data/docs/LoggableActivity/EncryptionKey.html +399 -0
  31. data/docs/LoggableActivity/Engine.html +108 -0
  32. data/docs/LoggableActivity/Error.html +142 -0
  33. data/docs/LoggableActivity/Generators/InstallGenerator.html +212 -0
  34. data/docs/LoggableActivity/Generators.html +91 -0
  35. data/docs/LoggableActivity/Hooks.html +841 -0
  36. data/docs/LoggableActivity/Payload.html +430 -0
  37. data/docs/LoggableActivity/Sanitizer.html +134 -0
  38. data/docs/LoggableActivity/Services/BasePayloadsBuilder.html +472 -0
  39. data/docs/LoggableActivity/Services/CustomPayloadsBuilder.html +225 -0
  40. data/docs/LoggableActivity/Services/DestroyPayloadsBuilder.html +396 -0
  41. data/docs/LoggableActivity/Services/PayloadsBuilder.html +348 -0
  42. data/docs/LoggableActivity/Services/UpdatePayloadsBuilder.html +540 -0
  43. data/docs/LoggableActivity/Services.html +93 -0
  44. data/docs/LoggableActivity.html +173 -0
  45. data/docs/MIT-LICENSE.html +132 -0
  46. data/docs/Object.html +110 -0
  47. data/docs/README_md.html +186 -0
  48. data/docs/Rakefile.html +134 -0
  49. data/docs/app/assets/config/loggable_activity_manifest_js.html +126 -0
  50. data/docs/app/assets/javascripts/loggable_activity/application_js.html +124 -0
  51. data/docs/app/assets/stylesheets/loggable_activity/activities_scss.html +154 -0
  52. data/docs/app/assets/stylesheets/loggable_activity/application_scss.html +142 -0
  53. data/docs/app/views/layouts/loggable_activity/application_html_slim.html +145 -0
  54. data/docs/app/views/loggable_activity/activities/_activities_html_slim.html +159 -0
  55. data/docs/created.rid +74 -0
  56. data/docs/css/fonts.css +167 -0
  57. data/docs/css/rdoc.css +687 -0
  58. data/docs/fonts/Lato-Light.ttf +0 -0
  59. data/docs/fonts/Lato-LightItalic.ttf +0 -0
  60. data/docs/fonts/Lato-Regular.ttf +0 -0
  61. data/docs/fonts/Lato-RegularItalic.ttf +0 -0
  62. data/docs/fonts/SourceCodePro-Bold.ttf +0 -0
  63. data/docs/fonts/SourceCodePro-Regular.ttf +0 -0
  64. data/docs/git-org/HEAD.html +126 -0
  65. data/docs/git-org/config.html +128 -0
  66. data/docs/git-org/description.html +126 -0
  67. data/docs/git-org/hooks/applypatch-msg_sample.html +128 -0
  68. data/docs/git-org/hooks/commit-msg_sample.html +138 -0
  69. data/docs/git-org/hooks/fsmonitor-watchman_sample.html +302 -0
  70. data/docs/git-org/hooks/post-update_sample.html +128 -0
  71. data/docs/git-org/hooks/pre-applypatch_sample.html +128 -0
  72. data/docs/git-org/hooks/pre-commit_sample.html +174 -0
  73. data/docs/git-org/hooks/pre-merge-commit_sample.html +133 -0
  74. data/docs/git-org/hooks/pre-push_sample.html +161 -0
  75. data/docs/git-org/hooks/pre-rebase_sample.html +282 -0
  76. data/docs/git-org/hooks/pre-receive_sample.html +144 -0
  77. data/docs/git-org/hooks/prepare-commit-msg_sample.html +136 -0
  78. data/docs/git-org/hooks/push-to-checkout_sample.html +178 -0
  79. data/docs/git-org/hooks/update_sample.html +226 -0
  80. data/docs/git-org/info/exclude.html +126 -0
  81. data/docs/images/add.png +0 -0
  82. data/docs/images/arrow_up.png +0 -0
  83. data/docs/images/brick.png +0 -0
  84. data/docs/images/brick_link.png +0 -0
  85. data/docs/images/bug.png +0 -0
  86. data/docs/images/bullet_black.png +0 -0
  87. data/docs/images/bullet_toggle_minus.png +0 -0
  88. data/docs/images/bullet_toggle_plus.png +0 -0
  89. data/docs/images/date.png +0 -0
  90. data/docs/images/delete.png +0 -0
  91. data/docs/images/find.png +0 -0
  92. data/docs/images/loadingAnimation.gif +0 -0
  93. data/docs/images/macFFBgHack.png +0 -0
  94. data/docs/images/package.png +0 -0
  95. data/docs/images/page_green.png +0 -0
  96. data/docs/images/page_white_text.png +0 -0
  97. data/docs/images/page_white_width.png +0 -0
  98. data/docs/images/plugin.png +0 -0
  99. data/docs/images/ruby.png +0 -0
  100. data/docs/images/tag_blue.png +0 -0
  101. data/docs/images/tag_green.png +0 -0
  102. data/docs/images/transparent.png +0 -0
  103. data/docs/images/wrench.png +0 -0
  104. data/docs/images/wrench_orange.png +0 -0
  105. data/docs/images/zoom.png +0 -0
  106. data/docs/index.html +166 -0
  107. data/docs/js/darkfish.js +97 -0
  108. data/docs/js/navigation.js +105 -0
  109. data/docs/js/navigation.js.gz +0 -0
  110. data/docs/js/search.js +110 -0
  111. data/docs/js/search_index.js +1 -0
  112. data/docs/js/search_index.js.gz +0 -0
  113. data/docs/js/searcher.js +229 -0
  114. data/docs/js/searcher.js.gz +0 -0
  115. data/docs/lib/loggable_activity/config_schema_json.html +205 -0
  116. data/docs/lib/tasks/loggable_activity_tasks_rake.html +128 -0
  117. data/docs/table_of_contents.html +954 -0
  118. data/lib/generators/loggable_activity/install/install_generator.rb +68 -0
  119. data/lib/generators/loggable_activity/install/templates/create_loggable_activities.rb +45 -0
  120. data/lib/generators/loggable_activity/install/templates/loggable_activity.en.yml +32 -0
  121. data/lib/generators/loggable_activity/install/templates/loggable_activity.rb +27 -0
  122. data/lib/generators/loggable_activity/install/templates/loggable_activity.yml +103 -0
  123. data/lib/loggable_activity/activity.rb +4 -4
  124. data/lib/loggable_activity/concerns/current_actor.rb +25 -0
  125. data/lib/loggable_activity/config_schema.json +2 -13
  126. data/lib/loggable_activity/configuration.rb +0 -10
  127. data/lib/loggable_activity/encryption.rb +33 -12
  128. data/lib/loggable_activity/encryption_key.rb +1 -1
  129. data/lib/loggable_activity/error.rb +3 -3
  130. data/lib/loggable_activity/hooks.rb +74 -18
  131. data/lib/loggable_activity/payload.rb +6 -4
  132. data/lib/loggable_activity/services/base_payloads_builder.rb +2 -1
  133. data/lib/loggable_activity/services/custom_payloads_builder.rb +55 -0
  134. data/lib/loggable_activity/version.rb +1 -1
  135. data/lib/loggable_activity.rb +5 -2
  136. metadata +121 -111
  137. data/lib/loggable_activity/concerns/current_user.rb +0 -26
@@ -0,0 +1,282 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>pre-rebase.sample - RDoc Documentation</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../../";
11
+ var index_rel_prefix = "../../";
12
+ </script>
13
+
14
+ <script src="../../js/navigation.js" defer></script>
15
+ <script src="../../js/search.js" defer></script>
16
+ <script src="../../js/search_index.js" defer></script>
17
+ <script src="../../js/searcher.js" defer></script>
18
+ <script src="../../js/darkfish.js" defer></script>
19
+
20
+ <link href="../../css/fonts.css" rel="stylesheet">
21
+ <link href="../../css/rdoc.css" rel="stylesheet">
22
+
23
+
24
+ <body id="top" role="document" class="file">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../../table_of_contents.html#pages">Pages</a>
34
+ <a href="../../table_of_contents.html#classes">Classes</a>
35
+ <a href="../../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="project-metadata">
59
+
60
+ <div id="fileindex-section" class="nav-section">
61
+ <h3>Pages</h3>
62
+
63
+ <ul class="link-list">
64
+ <li><a href="../../CHANGELOG_md.html">CHANGELOG</a>
65
+ <li><a href="../../CHEAT_SHEET_md.html">CHEAT_SHEET</a>
66
+ <li><a href="../../CODE_OF_CONDUCT_md.html">CODE_OF_CONDUCT</a>
67
+ <li><a href="../../GETTING-STARTED_md.html">GETTING-STARTED</a>
68
+ <li><a href="../../Gemfile.html">Gemfile</a>
69
+ <li><a href="../../Gemfile_lock.html">Gemfile.lock</a>
70
+ <li><a href="../../MIT-LICENSE.html">MIT-LICENSE</a>
71
+ <li><a href="../../README_md.html">README</a>
72
+ <li><a href="../../Rakefile.html">Rakefile</a>
73
+ <li><details><summary>app</summary>
74
+ <ul class="link-list">
75
+ <li><a href="../../app/assets/config/loggable_activity_manifest_js.html">loggable_activity_manifest.js</a>
76
+ <li><a href="../../app/assets/javascripts/loggable_activity/application_js.html">application.js</a>
77
+ <li><a href="../../app/assets/stylesheets/loggable_activity/activities_scss.html">activities.scss</a>
78
+ <li><a href="../../app/assets/stylesheets/loggable_activity/application_scss.html">application.scss</a>
79
+ <li><a href="../../app/views/layouts/loggable_activity/application_html_slim.html">application.html.slim</a>
80
+ <li><a href="../../app/views/loggable_activity/activities/_activities_html_slim.html">_activities.html.slim</a>
81
+ </ul></details>
82
+ <li><details open><summary>git-org</summary>
83
+ <ul class="link-list">
84
+ <li><a href="../../git-org/HEAD.html">HEAD</a>
85
+ <li><a href="../../git-org/config.html">config</a>
86
+ <li><a href="../../git-org/description.html">description</a>
87
+ <li><a href="../../git-org/hooks/applypatch-msg_sample.html">applypatch-msg.sample</a>
88
+ <li><a href="../../git-org/hooks/commit-msg_sample.html">commit-msg.sample</a>
89
+ <li><a href="../../git-org/hooks/fsmonitor-watchman_sample.html">fsmonitor-watchman.sample</a>
90
+ <li><a href="../../git-org/hooks/post-update_sample.html">post-update.sample</a>
91
+ <li><a href="../../git-org/hooks/pre-applypatch_sample.html">pre-applypatch.sample</a>
92
+ <li><a href="../../git-org/hooks/pre-commit_sample.html">pre-commit.sample</a>
93
+ <li><a href="../../git-org/hooks/pre-merge-commit_sample.html">pre-merge-commit.sample</a>
94
+ <li><a href="../../git-org/hooks/pre-push_sample.html">pre-push.sample</a>
95
+ <li><a href="../../git-org/hooks/pre-rebase_sample.html">pre-rebase.sample</a>
96
+ <li><a href="../../git-org/hooks/pre-receive_sample.html">pre-receive.sample</a>
97
+ <li><a href="../../git-org/hooks/prepare-commit-msg_sample.html">prepare-commit-msg.sample</a>
98
+ <li><a href="../../git-org/hooks/push-to-checkout_sample.html">push-to-checkout.sample</a>
99
+ <li><a href="../../git-org/hooks/update_sample.html">update.sample</a>
100
+ <li><a href="../../git-org/info/exclude.html">exclude</a>
101
+ </ul></details>
102
+ <li><details><summary>lib</summary>
103
+ <ul class="link-list">
104
+ <li><a href="../../lib/loggable_activity/config_schema_json.html">config_schema.json</a>
105
+ <li><a href="../../lib/tasks/loggable_activity_tasks_rake.html">loggable_activity_tasks.rake</a>
106
+ </ul></details>
107
+ </ul>
108
+ </div>
109
+
110
+ </div>
111
+ </nav>
112
+
113
+ <main role="main" aria-label="Page git-org/hooks/pre-rebase.sample">
114
+
115
+ <p>!/bin/sh # # Copyright © 2006, 2008 Junio C Hamano # # The “pre-rebase” hook is run just before “git rebase” starts doing # its job, and can prevent the command from running by exiting with # non-zero status. # # The hook is called with the following parameters: # # $1 – the upstream the series was forked from. # $2 – the branch being rebased (or empty when rebasing the current branch). # # This sample shows how to prevent topic branches that are already # merged to ‘next’ branch from getting rebased, because allowing it # would result in rebasing already published history.</p>
116
+
117
+ <p>publish=next basebranch=“$1” if test “$#” = 2 then</p>
118
+
119
+ <pre class="ruby"><span class="ruby-identifier">topic</span>=<span class="ruby-string">&quot;refs/heads/$2&quot;</span>
120
+ </pre>
121
+
122
+ <p>else</p>
123
+
124
+ <pre>topic=`git symbolic-ref HEAD` ||
125
+ exit 0 ;# we do not interrupt rebasing detached HEAD</pre>
126
+
127
+ <p>fi</p>
128
+
129
+ <p>case “$topic” in refs/heads/??/*)</p>
130
+
131
+ <pre class="ruby">;;
132
+ </pre>
133
+
134
+ <p>*)</p>
135
+
136
+ <pre class="ruby"><span class="ruby-identifier">exit</span> <span class="ruby-value">0</span> ;<span class="ruby-comment"># we do not interrupt others.</span>
137
+ ;;
138
+ </pre>
139
+
140
+ <p>esac</p>
141
+
142
+ <p># Now we are dealing with a topic branch being rebased # on top of master. Is it OK to rebase it?</p>
143
+
144
+ <p># Does the topic really exist? git show-ref -q “$topic” || {</p>
145
+
146
+ <pre>echo &gt;&amp;2 &quot;No such branch $topic&quot;
147
+ exit 1</pre>
148
+
149
+ <p>}</p>
150
+
151
+ <p># Is topic fully merged to master? not_in_master=‘git rev-list –pretty=oneline ^master “$topic”` if test -z “$not_in_master” then</p>
152
+
153
+ <pre>echo &gt;&amp;2 &quot;$topic is fully merged to master; better remove it.&quot;
154
+ exit 1 ;# we could allow it, but there is no point.</pre>
155
+
156
+ <p>fi</p>
157
+
158
+ <p># Is topic ever merged to next? If so you should not be rebasing it. only_next_1=‘git rev-list ^master “^$topic” ${publish} | sort` only_next_2=`git rev-list ^master ${publish} | sort` if test “$only_next_1” = “$only_next_2” then</p>
159
+
160
+ <pre>not_in_topic=`git rev-list &quot;^$topic&quot; master`
161
+ if test -z &quot;$not_in_topic&quot;
162
+ then
163
+ echo &gt;&amp;2 &quot;$topic is already up to date with master&quot;
164
+ exit 1 ;# we could allow it, but there is no point.
165
+ else
166
+ exit 0
167
+ fi</pre>
168
+
169
+ <p>else</p>
170
+
171
+ <pre>not_in_next=`git rev-list --pretty=oneline ^${publish} &quot;$topic&quot;`
172
+ /usr/bin/perl -e &#39;
173
+ my $topic = $ARGV[0];
174
+ my $msg = &quot;* $topic has commits already merged to public branch:\n&quot;;
175
+ my (%not_in_next) = map {
176
+ /^([0-9a-f]+) /;
177
+ ($1 =&gt; 1);
178
+ } split(/\n/, $ARGV[1]);
179
+ for my $elem (map {
180
+ /^([0-9a-f]+) (.*)$/;
181
+ [$1 =&gt; $2];
182
+ } split(/\n/, $ARGV[2])) {
183
+ if (!exists $not_in_next{$elem-&gt;[0]}) {
184
+ if ($msg) {
185
+ print STDERR $msg;
186
+ undef $msg;
187
+ }
188
+ print STDERR &quot; $elem-&gt;[1]\n&quot;;
189
+ }
190
+ }
191
+ &#39; &quot;$topic&quot; &quot;$not_in_next&quot; &quot;$not_in_master&quot;
192
+ exit 1</pre>
193
+
194
+ <p>fi</p>
195
+
196
+ <p>&lt;&lt;DOC_END</p>
197
+
198
+ <p>This sample hook safeguards topic branches that have been published from being rewound.</p>
199
+
200
+ <p>The workflow assumed here is:</p>
201
+
202
+ <pre>* Once a topic branch forks from &quot;master&quot;, &quot;master&quot; is never
203
+ merged into it again (either directly or indirectly).
204
+
205
+ * Once a topic branch is fully cooked and merged into &quot;master&quot;,
206
+ it is deleted. If you need to build on top of it to correct
207
+ earlier mistakes, a new topic branch is created by forking at
208
+ the tip of the &quot;master&quot;. This is not strictly necessary, but
209
+ it makes it easier to keep your history simple.
210
+
211
+ * Whenever you need to test or publish your changes to topic
212
+ branches, merge them into &quot;next&quot; branch.</pre>
213
+
214
+ <p>The script, being an example, hardcodes the publish branch name to be “next”, but it is trivial to make it configurable via $GIT_DIR/config mechanism.</p>
215
+
216
+ <p>With this workflow, you would want to know:</p>
217
+
218
+ <p>(1) … if a topic branch has ever been merged to “next”. Young</p>
219
+
220
+ <pre>topic branches can have stupid mistakes you would rather
221
+ clean up before publishing, and things that have not been
222
+ merged into other branches can be easily rebased without
223
+ affecting other people. But once it is published, you would
224
+ not want to rewind it.</pre>
225
+
226
+ <p>(2) … if a topic branch has been fully merged to “master”.</p>
227
+
228
+ <pre>Then you can delete it. More importantly, you should not
229
+ build on top of it -- other people may already want to
230
+ change things related to the topic as patches against your
231
+ &quot;master&quot;, so if you need further changes, it is better to
232
+ fork the topic (perhaps with the same name) afresh from the
233
+ tip of &quot;master&quot;.</pre>
234
+
235
+ <p>Let’s look at this example:</p>
236
+
237
+ <pre> o---o---o---o---o---o---o---o---o---o &quot;next&quot;
238
+ / / / /
239
+ / a---a---b A / /
240
+ / / / /
241
+ / / c---c---c---c B /
242
+ / / / \ /
243
+ / / / b---b C \ /
244
+ / / / / \ /
245
+ ---o---o---o---o---o---o---o---o---o---o---o &quot;master&quot;</pre>
246
+
247
+ <p>A, B and C are topic branches.</p>
248
+
249
+ <pre>* A has one fix since it was merged up to &quot;next&quot;.
250
+
251
+ * B has finished. It has been fully merged up to &quot;master&quot; and &quot;next&quot;,
252
+ and is ready to be deleted.
253
+
254
+ * C has not merged to &quot;next&quot; at all.</pre>
255
+
256
+ <p>We would want to allow C to be rebased, refuse A, and encourage B to be deleted.</p>
257
+
258
+ <p>To compute (1):</p>
259
+
260
+ <pre>git rev-list ^master ^topic next
261
+ git rev-list ^master next
262
+
263
+ if these match, topic has not merged in next at all.</pre>
264
+
265
+ <p>To compute (2):</p>
266
+
267
+ <pre>git rev-list master..topic
268
+
269
+ if this is empty, it is fully merged to &quot;master&quot;.</pre>
270
+
271
+ <p>DOC_END</p>
272
+
273
+ </main>
274
+
275
+
276
+
277
+ <footer id="validator-badges" role="contentinfo">
278
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
279
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
280
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
281
+ </footer>
282
+
@@ -0,0 +1,144 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>pre-receive.sample - RDoc Documentation</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../../";
11
+ var index_rel_prefix = "../../";
12
+ </script>
13
+
14
+ <script src="../../js/navigation.js" defer></script>
15
+ <script src="../../js/search.js" defer></script>
16
+ <script src="../../js/search_index.js" defer></script>
17
+ <script src="../../js/searcher.js" defer></script>
18
+ <script src="../../js/darkfish.js" defer></script>
19
+
20
+ <link href="../../css/fonts.css" rel="stylesheet">
21
+ <link href="../../css/rdoc.css" rel="stylesheet">
22
+
23
+
24
+ <body id="top" role="document" class="file">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../../table_of_contents.html#pages">Pages</a>
34
+ <a href="../../table_of_contents.html#classes">Classes</a>
35
+ <a href="../../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="project-metadata">
59
+
60
+ <div id="fileindex-section" class="nav-section">
61
+ <h3>Pages</h3>
62
+
63
+ <ul class="link-list">
64
+ <li><a href="../../CHANGELOG_md.html">CHANGELOG</a>
65
+ <li><a href="../../CHEAT_SHEET_md.html">CHEAT_SHEET</a>
66
+ <li><a href="../../CODE_OF_CONDUCT_md.html">CODE_OF_CONDUCT</a>
67
+ <li><a href="../../GETTING-STARTED_md.html">GETTING-STARTED</a>
68
+ <li><a href="../../Gemfile.html">Gemfile</a>
69
+ <li><a href="../../Gemfile_lock.html">Gemfile.lock</a>
70
+ <li><a href="../../MIT-LICENSE.html">MIT-LICENSE</a>
71
+ <li><a href="../../README_md.html">README</a>
72
+ <li><a href="../../Rakefile.html">Rakefile</a>
73
+ <li><details><summary>app</summary>
74
+ <ul class="link-list">
75
+ <li><a href="../../app/assets/config/loggable_activity_manifest_js.html">loggable_activity_manifest.js</a>
76
+ <li><a href="../../app/assets/javascripts/loggable_activity/application_js.html">application.js</a>
77
+ <li><a href="../../app/assets/stylesheets/loggable_activity/activities_scss.html">activities.scss</a>
78
+ <li><a href="../../app/assets/stylesheets/loggable_activity/application_scss.html">application.scss</a>
79
+ <li><a href="../../app/views/layouts/loggable_activity/application_html_slim.html">application.html.slim</a>
80
+ <li><a href="../../app/views/loggable_activity/activities/_activities_html_slim.html">_activities.html.slim</a>
81
+ </ul></details>
82
+ <li><details open><summary>git-org</summary>
83
+ <ul class="link-list">
84
+ <li><a href="../../git-org/HEAD.html">HEAD</a>
85
+ <li><a href="../../git-org/config.html">config</a>
86
+ <li><a href="../../git-org/description.html">description</a>
87
+ <li><a href="../../git-org/hooks/applypatch-msg_sample.html">applypatch-msg.sample</a>
88
+ <li><a href="../../git-org/hooks/commit-msg_sample.html">commit-msg.sample</a>
89
+ <li><a href="../../git-org/hooks/fsmonitor-watchman_sample.html">fsmonitor-watchman.sample</a>
90
+ <li><a href="../../git-org/hooks/post-update_sample.html">post-update.sample</a>
91
+ <li><a href="../../git-org/hooks/pre-applypatch_sample.html">pre-applypatch.sample</a>
92
+ <li><a href="../../git-org/hooks/pre-commit_sample.html">pre-commit.sample</a>
93
+ <li><a href="../../git-org/hooks/pre-merge-commit_sample.html">pre-merge-commit.sample</a>
94
+ <li><a href="../../git-org/hooks/pre-push_sample.html">pre-push.sample</a>
95
+ <li><a href="../../git-org/hooks/pre-rebase_sample.html">pre-rebase.sample</a>
96
+ <li><a href="../../git-org/hooks/pre-receive_sample.html">pre-receive.sample</a>
97
+ <li><a href="../../git-org/hooks/prepare-commit-msg_sample.html">prepare-commit-msg.sample</a>
98
+ <li><a href="../../git-org/hooks/push-to-checkout_sample.html">push-to-checkout.sample</a>
99
+ <li><a href="../../git-org/hooks/update_sample.html">update.sample</a>
100
+ <li><a href="../../git-org/info/exclude.html">exclude</a>
101
+ </ul></details>
102
+ <li><details><summary>lib</summary>
103
+ <ul class="link-list">
104
+ <li><a href="../../lib/loggable_activity/config_schema_json.html">config_schema.json</a>
105
+ <li><a href="../../lib/tasks/loggable_activity_tasks_rake.html">loggable_activity_tasks.rake</a>
106
+ </ul></details>
107
+ </ul>
108
+ </div>
109
+
110
+ </div>
111
+ </nav>
112
+
113
+ <main role="main" aria-label="Page git-org/hooks/pre-receive.sample">
114
+
115
+ <p>!/bin/sh # # An example hook script to make use of push options. # The example simply echoes all push options that start with ‘echoback=’ # and rejects all pushes when the “reject” push option is used. # # To enable this hook, rename this file to “pre-receive”.</p>
116
+
117
+ <p>if test -n “$GIT_PUSH_OPTION_COUNT” then</p>
118
+
119
+ <pre>i=0
120
+ while test &quot;$i&quot; -lt &quot;$GIT_PUSH_OPTION_COUNT&quot;
121
+ do
122
+ eval &quot;value=\$GIT_PUSH_OPTION_$i&quot;
123
+ case &quot;$value&quot; in
124
+ echoback=*)
125
+ echo &quot;echo from the pre-receive-hook: ${value#*=}&quot; &gt;&amp;2
126
+ ;;
127
+ reject)
128
+ exit 1
129
+ esac
130
+ i=$((i + 1))
131
+ done</pre>
132
+
133
+ <p>fi</p>
134
+
135
+ </main>
136
+
137
+
138
+
139
+ <footer id="validator-badges" role="contentinfo">
140
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
141
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
142
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
143
+ </footer>
144
+
@@ -0,0 +1,136 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>prepare-commit-msg.sample - RDoc Documentation</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../../";
11
+ var index_rel_prefix = "../../";
12
+ </script>
13
+
14
+ <script src="../../js/navigation.js" defer></script>
15
+ <script src="../../js/search.js" defer></script>
16
+ <script src="../../js/search_index.js" defer></script>
17
+ <script src="../../js/searcher.js" defer></script>
18
+ <script src="../../js/darkfish.js" defer></script>
19
+
20
+ <link href="../../css/fonts.css" rel="stylesheet">
21
+ <link href="../../css/rdoc.css" rel="stylesheet">
22
+
23
+
24
+ <body id="top" role="document" class="file">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../../table_of_contents.html#pages">Pages</a>
34
+ <a href="../../table_of_contents.html#classes">Classes</a>
35
+ <a href="../../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="project-metadata">
59
+
60
+ <div id="fileindex-section" class="nav-section">
61
+ <h3>Pages</h3>
62
+
63
+ <ul class="link-list">
64
+ <li><a href="../../CHANGELOG_md.html">CHANGELOG</a>
65
+ <li><a href="../../CHEAT_SHEET_md.html">CHEAT_SHEET</a>
66
+ <li><a href="../../CODE_OF_CONDUCT_md.html">CODE_OF_CONDUCT</a>
67
+ <li><a href="../../GETTING-STARTED_md.html">GETTING-STARTED</a>
68
+ <li><a href="../../Gemfile.html">Gemfile</a>
69
+ <li><a href="../../Gemfile_lock.html">Gemfile.lock</a>
70
+ <li><a href="../../MIT-LICENSE.html">MIT-LICENSE</a>
71
+ <li><a href="../../README_md.html">README</a>
72
+ <li><a href="../../Rakefile.html">Rakefile</a>
73
+ <li><details><summary>app</summary>
74
+ <ul class="link-list">
75
+ <li><a href="../../app/assets/config/loggable_activity_manifest_js.html">loggable_activity_manifest.js</a>
76
+ <li><a href="../../app/assets/javascripts/loggable_activity/application_js.html">application.js</a>
77
+ <li><a href="../../app/assets/stylesheets/loggable_activity/activities_scss.html">activities.scss</a>
78
+ <li><a href="../../app/assets/stylesheets/loggable_activity/application_scss.html">application.scss</a>
79
+ <li><a href="../../app/views/layouts/loggable_activity/application_html_slim.html">application.html.slim</a>
80
+ <li><a href="../../app/views/loggable_activity/activities/_activities_html_slim.html">_activities.html.slim</a>
81
+ </ul></details>
82
+ <li><details open><summary>git-org</summary>
83
+ <ul class="link-list">
84
+ <li><a href="../../git-org/HEAD.html">HEAD</a>
85
+ <li><a href="../../git-org/config.html">config</a>
86
+ <li><a href="../../git-org/description.html">description</a>
87
+ <li><a href="../../git-org/hooks/applypatch-msg_sample.html">applypatch-msg.sample</a>
88
+ <li><a href="../../git-org/hooks/commit-msg_sample.html">commit-msg.sample</a>
89
+ <li><a href="../../git-org/hooks/fsmonitor-watchman_sample.html">fsmonitor-watchman.sample</a>
90
+ <li><a href="../../git-org/hooks/post-update_sample.html">post-update.sample</a>
91
+ <li><a href="../../git-org/hooks/pre-applypatch_sample.html">pre-applypatch.sample</a>
92
+ <li><a href="../../git-org/hooks/pre-commit_sample.html">pre-commit.sample</a>
93
+ <li><a href="../../git-org/hooks/pre-merge-commit_sample.html">pre-merge-commit.sample</a>
94
+ <li><a href="../../git-org/hooks/pre-push_sample.html">pre-push.sample</a>
95
+ <li><a href="../../git-org/hooks/pre-rebase_sample.html">pre-rebase.sample</a>
96
+ <li><a href="../../git-org/hooks/pre-receive_sample.html">pre-receive.sample</a>
97
+ <li><a href="../../git-org/hooks/prepare-commit-msg_sample.html">prepare-commit-msg.sample</a>
98
+ <li><a href="../../git-org/hooks/push-to-checkout_sample.html">push-to-checkout.sample</a>
99
+ <li><a href="../../git-org/hooks/update_sample.html">update.sample</a>
100
+ <li><a href="../../git-org/info/exclude.html">exclude</a>
101
+ </ul></details>
102
+ <li><details><summary>lib</summary>
103
+ <ul class="link-list">
104
+ <li><a href="../../lib/loggable_activity/config_schema_json.html">config_schema.json</a>
105
+ <li><a href="../../lib/tasks/loggable_activity_tasks_rake.html">loggable_activity_tasks.rake</a>
106
+ </ul></details>
107
+ </ul>
108
+ </div>
109
+
110
+ </div>
111
+ </nav>
112
+
113
+ <main role="main" aria-label="Page git-org/hooks/prepare-commit-msg.sample">
114
+
115
+ <p>!/bin/sh # # An example hook script to prepare the commit log message. # Called by “git commit” with the name of the file that has the # commit message, followed by the description of the commit # message’s source. The hook’s purpose is to edit the commit # message file. If the hook fails with a non-zero status, # the commit is aborted. # # To enable this hook, rename this file to “prepare-commit-msg”.</p>
116
+
117
+ <p># This hook includes three examples. The first one removes the # “# Please enter the commit message…” help message. # # The second includes the output of “git diff –name-status -r” # into the message, just before the “git status” output. It is # commented because it doesn’t cope with –amend or with squashed # commits. # # The third example adds a Signed-off-by line to the message, that can # still be edited. This is rarely a good idea.</p>
118
+
119
+ <p>COMMIT_MSG_FILE=$1 COMMIT_SOURCE=$2 SHA1=$3</p>
120
+
121
+ <p>/usr/bin/perl -i.bak -ne ‘print unless(m/^. Please enter the commit message/..m/^#$/)’ “$COMMIT_MSG_FILE”</p>
122
+
123
+ <p># case “$COMMIT_SOURCE,$SHA1” in # ,|template,) # /usr/bin/perl -i.bak -pe ‘ # print “n” . `git diff –cached –name-status -r` # if /^#/ &amp;&amp; $first++ == 0’ “$COMMIT_MSG_FILE” ;; # *) ;; # esac</p>
124
+
125
+ <p># SOB=$(git var GIT_COMMITTER_IDENT | sed -n ‘s/^(.*&gt;).*$/Signed-off-by: 1/p’) # git interpret-trailers –in-place –trailer “$SOB” “$COMMIT_MSG_FILE” # if test -z “$COMMIT_SOURCE” # then # /usr/bin/perl -i.bak -pe ‘print “n” if !$first_line++’ “$COMMIT_MSG_FILE” # fi</p>
126
+
127
+ </main>
128
+
129
+
130
+
131
+ <footer id="validator-badges" role="contentinfo">
132
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
133
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.7.0.
134
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
135
+ </footer>
136
+