lefthook-freebsd-arm64 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -0
- package/bin/lefthook +0 -0
- package/package.json +19 -0
package/README.md
ADDED
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
|
|
2
|
+

|
|
3
|
+
|
|
4
|
+
# Lefthook
|
|
5
|
+
|
|
6
|
+
> The fastest polyglot Git hooks manager out there
|
|
7
|
+
|
|
8
|
+
<img align="right" width="147" height="100" title="Lefthook logo"
|
|
9
|
+
src="./logo_sign.svg">
|
|
10
|
+
|
|
11
|
+
Fast and powerful Git hooks manager for Node.js, Ruby or any other type of projects.
|
|
12
|
+
|
|
13
|
+
* **Fast.** It is written in Go. Can run commands in parallel.
|
|
14
|
+
* **Powerful.** It allows to control execution and files you pass to your commands.
|
|
15
|
+
* **Simple.** It is single dependency-free binary which can work in any environment.
|
|
16
|
+
|
|
17
|
+
📖 [Read the introduction post](https://evilmartians.com/chronicles/lefthook-knock-your-teams-code-back-into-shape?utm_source=lefthook)
|
|
18
|
+
|
|
19
|
+
<a href="https://evilmartians.com/?utm_source=lefthook">
|
|
20
|
+
<img src="https://evilmartians.com/badges/sponsored-by-evil-martians.svg" alt="Sponsored by Evil Martians" width="236" height="54"></a>
|
|
21
|
+
|
|
22
|
+
## Install
|
|
23
|
+
|
|
24
|
+
With **Go** (>= 1.19):
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
go install github.com/evilmartians/lefthook@latest
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
With **NPM**:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm install lefthook --save-dev
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
With **Ruby**:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
gem install lefthook
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**[Installation guide](./docs/install.md)** with more different installation instructions.
|
|
43
|
+
|
|
44
|
+
## Usage
|
|
45
|
+
|
|
46
|
+
Lefthook is easy to use. Once you configure and setup you can forget that it even exists and rely on the magic underneath.
|
|
47
|
+
|
|
48
|
+
See:
|
|
49
|
+
|
|
50
|
+
- [**Usage**](./docs/usage.md) of **lefthook** CLI utility.
|
|
51
|
+
- [**Configuration**](./docs/configuration.md) details for `lefthook.yml`
|
|
52
|
+
- [**Wiki**](https://github.com/evilmartians/lefthook/wiki) for other information.
|
|
53
|
+
- [**Discussions**](https://github.com/evilmartians/lefthook/discussions) if you want to ask a question, suggest a feature, or report a bug.
|
|
54
|
+
|
|
55
|
+
***
|
|
56
|
+
|
|
57
|
+
## Why Lefthook
|
|
58
|
+
|
|
59
|
+
* ### **Parallel execution**
|
|
60
|
+
Gives you more speed. [Example](./docs/full_guide.md#parallel-execution)
|
|
61
|
+
|
|
62
|
+
```yml
|
|
63
|
+
pre-push:
|
|
64
|
+
parallel: true
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
* ### **Flexible list of files**
|
|
68
|
+
If you want your own list. [Custom](./docs/full_guide.md#custom-file-list) and [prebuilt](./docs/full_guide.md#select-specific-file-groups) examples.
|
|
69
|
+
|
|
70
|
+
```yml
|
|
71
|
+
pre-commit:
|
|
72
|
+
commands:
|
|
73
|
+
frontend-linter:
|
|
74
|
+
run: yarn eslint {staged_files}
|
|
75
|
+
backend-linter:
|
|
76
|
+
run: bundle exec rubocop --force-exclusion {all_files}
|
|
77
|
+
frontend-style:
|
|
78
|
+
files: git diff --name-only HEAD @{push}
|
|
79
|
+
run: yarn stylelint {files}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
* ### **Glob and regexp filters**
|
|
83
|
+
If you want to filter list of files. You could find more glob pattern examples [here](https://github.com/gobwas/glob#example).
|
|
84
|
+
|
|
85
|
+
```yml
|
|
86
|
+
pre-commit:
|
|
87
|
+
commands:
|
|
88
|
+
backend-linter:
|
|
89
|
+
glob: "*.rb" # glob filter
|
|
90
|
+
exclude: "application.rb|routes.rb" # regexp filter
|
|
91
|
+
run: bundle exec rubocop --force-exclusion {all_files}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
* ### **Execute in sub-directory**
|
|
95
|
+
If you want to execute the commands in a relative path
|
|
96
|
+
|
|
97
|
+
```yml
|
|
98
|
+
pre-commit:
|
|
99
|
+
commands:
|
|
100
|
+
backend-linter:
|
|
101
|
+
root: "api/" # Careful to have only trailing slash
|
|
102
|
+
glob: "*.rb" # glob filter
|
|
103
|
+
run: bundle exec rubocop {all_files}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
* ### **Run scripts**
|
|
107
|
+
|
|
108
|
+
If oneline commands are not enough, you can execute files. [Example](./docs/full_guide.md#bash-script-example).
|
|
109
|
+
|
|
110
|
+
```yml
|
|
111
|
+
commit-msg:
|
|
112
|
+
scripts:
|
|
113
|
+
"template_checker":
|
|
114
|
+
runner: bash
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
* ### **Tags**
|
|
118
|
+
If you want to control a group of commands. [Example](./docs/full_guide.md#skipping-commands-by-tags).
|
|
119
|
+
|
|
120
|
+
```yml
|
|
121
|
+
pre-push:
|
|
122
|
+
commands:
|
|
123
|
+
packages-audit:
|
|
124
|
+
tags: frontend security
|
|
125
|
+
run: yarn audit
|
|
126
|
+
gems-audit:
|
|
127
|
+
tags: backend security
|
|
128
|
+
run: bundle audit
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
* ### **Support Docker**
|
|
132
|
+
|
|
133
|
+
If you are in the Docker environment. [Example](./docs/full_guide.md#referencing-commands-from-lefthookyml).
|
|
134
|
+
|
|
135
|
+
```yml
|
|
136
|
+
pre-commit:
|
|
137
|
+
scripts:
|
|
138
|
+
"good_job.js":
|
|
139
|
+
runner: docker run -it --rm <container_id_or_name> {cmd}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
* ### **Local config**
|
|
143
|
+
|
|
144
|
+
If you a frontend/backend developer and want to skip unnecessary commands or override something into Docker. [Description](./docs/full_guide.md#local-config).
|
|
145
|
+
|
|
146
|
+
```yml
|
|
147
|
+
# lefthook-local.yml
|
|
148
|
+
pre-push:
|
|
149
|
+
exclude_tags:
|
|
150
|
+
- frontend
|
|
151
|
+
commands:
|
|
152
|
+
packages-audit:
|
|
153
|
+
skip: true
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
* ### **Direct control**
|
|
157
|
+
|
|
158
|
+
If you want to run hooks group directly.
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
$ lefthook run pre-commit
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
* ### **Your own tasks**
|
|
165
|
+
|
|
166
|
+
If you want to run specific group of commands directly.
|
|
167
|
+
|
|
168
|
+
```yml
|
|
169
|
+
fixer:
|
|
170
|
+
commands:
|
|
171
|
+
ruby-fixer:
|
|
172
|
+
run: bundle exec rubocop --force-exclusion --safe-auto-correct {staged_files}
|
|
173
|
+
js-fixer:
|
|
174
|
+
run: yarn eslint --fix {staged_files}
|
|
175
|
+
```
|
|
176
|
+
```bash
|
|
177
|
+
$ lefthook run fixer
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
* ### **Optional output**
|
|
181
|
+
If you don't want to see supporting information:
|
|
182
|
+
```yml
|
|
183
|
+
skip_output:
|
|
184
|
+
- meta #(version and which hook running)
|
|
185
|
+
- success #(output from runners with exit code 0)
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Table of contents:
|
|
191
|
+
|
|
192
|
+
### Guides
|
|
193
|
+
|
|
194
|
+
* [Install with Node.js](./docs/install.md#node)
|
|
195
|
+
* [Install with Ruby](./docs/install.md#ruby)
|
|
196
|
+
* [Install with Homebrew](./docs/install.md#homebrew)
|
|
197
|
+
* [Install for Debian-based Linux](./docs/install.md#deb)
|
|
198
|
+
* [Install for RPM-based Linux](./docs/install.md#rpm)
|
|
199
|
+
* [Install for Arch Linux](./docs/install.md#arch)
|
|
200
|
+
* [Usage](./docs/usage.md)
|
|
201
|
+
* [Configuration](./docs/configuration.md)
|
|
202
|
+
* [Troubleshooting](https://github.com/evilmartians/lefthook/wiki/Troubleshooting)
|
|
203
|
+
|
|
204
|
+
### Migrate from
|
|
205
|
+
* [Husky](https://github.com/evilmartians/lefthook/wiki/Migration-from-husky)
|
|
206
|
+
* [Husky and lint-staged](https://github.com/evilmartians/lefthook/wiki/Migration-from-husky-with-lint-staged)
|
|
207
|
+
* [Overcommit](https://github.com/evilmartians/lefthook/wiki/Migration-from-overcommit)
|
|
208
|
+
|
|
209
|
+
### Examples
|
|
210
|
+
* [Simple script](https://github.com/evilmartians/lefthook/tree/master/examples/with_scripts)
|
|
211
|
+
* [Full features](https://github.com/evilmartians/lefthook/tree/master/examples/complete)
|
|
212
|
+
|
|
213
|
+
### Benchmarks
|
|
214
|
+
* [vs Overcommit](https://github.com/evilmartians/lefthook/wiki/Benchmark-lefthook-vs-overcommit)
|
|
215
|
+
* [vs pre-commit](https://github.com/evilmartians/lefthook/wiki/Benchmark-lefthook-vs-pre-commit)
|
|
216
|
+
|
|
217
|
+
### Comparison list
|
|
218
|
+
* [vs Overcommit, Husky, pre-commit](https://github.com/evilmartians/lefthook/wiki/Comparison-with-other-solutions)
|
|
219
|
+
|
|
220
|
+
### Articles
|
|
221
|
+
* [Lefthook: Knock your team’s code back into shape](https://evilmartians.com/chronicles/lefthook-knock-your-teams-code-back-into-shape?utm_source=lefthook)
|
|
222
|
+
* [Lefthook + Crystalball](https://evilmartians.com/chronicles/lefthook-crystalball-and-git-magic?utm_source=lefthook)
|
|
223
|
+
* [Keeping OSS documentation in check with docsify, Lefthook, and friends](https://evilmartians.com/chronicles/keeping-oss-documentation-in-check-with-docsify-lefthook-and-friends?utm_source=lefthook)
|
|
224
|
+
* [Automatically linting docker containers](https://dev.to/nitzano/linting-docker-containers-2lo6?utm_source=lefthook)
|
|
225
|
+
* [Smooth PostgreSQL upgrades in DockerDev environments with Lefthook](https://dev.to/palkan_tula/smooth-postgresql-upgrades-in-dockerdev-environments-with-lefthook-203k?utm_source=lefthook)
|
|
226
|
+
* [Lefthook for React/React Native apps](https://blog.logrocket.com/deep-dive-into-lefthook-react-native?utm_source=lefthook)
|
package/bin/lefthook
ADDED
|
Binary file
|
package/package.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "lefthook-freebsd-arm64",
|
|
3
|
+
"version": "1.2.2",
|
|
4
|
+
"description": "The FreeBSD ARM 64-bit binary for lefthook, git hooks manager.",
|
|
5
|
+
"preferUnplugged": false,
|
|
6
|
+
"repository": "https://github.com/evilmartians/lefthook",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"bugs": {
|
|
9
|
+
"url": "https://github.com/evilmartians/lefthook/issues",
|
|
10
|
+
"email": "lefthook@evilmartians.com"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://github.com/evilmartians/lefthook#readme",
|
|
13
|
+
"os": [
|
|
14
|
+
"freebsd"
|
|
15
|
+
],
|
|
16
|
+
"cpu": [
|
|
17
|
+
"arm64"
|
|
18
|
+
]
|
|
19
|
+
}
|