Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0b99041

Browse files
committed
Merge branch 'main' into doc-types
2 parentsb070e93 +e880c33 commit0b99041

29 files changed

+195
-219
lines changed

‎.flake8

Lines changed: 0 additions & 26 deletions
This file was deleted.

‎.github/workflows/lint.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,3 @@ jobs:
1616
-uses:pre-commit/action@v3.0.1
1717
with:
1818
extra_args:--all-files --hook-stage manual
19-
env:
20-
SKIP:black-format

‎.pre-commit-config.yaml

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,12 @@
11
repos:
2-
-repo:https://github.com/psf/black-pre-commit-mirror
3-
rev:23.9.1
4-
hooks:
5-
-id:black
6-
alias:black-check
7-
name:black (check)
8-
args:[--check, --diff]
9-
exclude:^git/ext/
10-
stages:[manual]
112

12-
-id:black
13-
alias:black-format
14-
name:black (format)
15-
exclude:^git/ext/
16-
17-
-repo:https://github.com/PyCQA/flake8
18-
rev:6.1.0
3+
-repo:https://github.com/astral-sh/ruff-pre-commit
4+
rev:v0.3.0
195
hooks:
20-
-id:flake8
21-
additional_dependencies:
22-
-flake8-bugbear==23.9.16
23-
-flake8-comprehensions==3.14.0
24-
-flake8-typing-imports==1.14.0
6+
-id:ruff-format
7+
exclude:^git/ext/
8+
-id:ruff
9+
args:["--fix"]
2510
exclude:^doc|^git/ext/
2611

2712
-repo:https://github.com/shellcheck-py/shellcheck-py

‎Makefile

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
1-
.PHONY: alllintclean release force_release
1+
.PHONY: all clean release force_release
22

33
all:
44
@awk -F:'/^[[:alpha:]].*:/ && !/^all:/ {print $$1}' Makefile
55

6-
lint:
7-
SKIP=black-format pre-commit run --all-files --hook-stage manual
8-
96
clean:
107
rm -rf build/ dist/ .eggs/ .tox/
118

‎README.md

Lines changed: 24 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ probably the skills to scratch that itch of mine: implement `git` in a way that
1717
If you like the idea and want to learn more, please head over to[gitoxide](https://github.com/Byron/gitoxide), an
1818
implementation of 'git' in[Rust](https://www.rust-lang.org).
1919

20-
*(Please note that`gitoxide` is not currently available for use in Python, and that Rust is required)*
20+
*(Please note that`gitoxide` is not currently available for use in Python, and that Rust is required.)*
2121

2222
##GitPython
2323

@@ -39,9 +39,9 @@ The project is open to contributions of all kinds, as well as new maintainers.
3939

4040
###REQUIREMENTS
4141

42-
GitPython needs the`git` executable to be installed on the system and available in your`PATH` for most operations.
43-
If it is not in your`PATH`, you can help GitPython find it by setting
44-
the`GIT_PYTHON_GIT_EXECUTABLE=<path/to/git>` environment variable.
42+
GitPython needs the`git` executable to be installed on the system and available in your
43+
`PATH` for most operations.If it is not in your`PATH`, you can help GitPython find it
44+
by settingthe`GIT_PYTHON_GIT_EXECUTABLE=<path/to/git>` environment variable.
4545

4646
- Git (1.7.x or newer)
4747
- Python >= 3.7
@@ -57,7 +57,7 @@ GitPython and its required package dependencies can be installed in any of the f
5757

5858
To obtain and install a copy[from PyPI](https://pypi.org/project/GitPython/), run:
5959

60-
```bash
60+
```sh
6161
pip install GitPython
6262
```
6363

@@ -67,15 +67,15 @@ pip install GitPython
6767

6868
If you have downloaded the source code, run this from inside the unpacked`GitPython` directory:
6969

70-
```bash
70+
```sh
7171
pip install.
7272
```
7373

7474
####By cloning the source code repository
7575

7676
To clone the[the GitHub repository](https://github.com/gitpython-developers/GitPython) from source to work on the code, you can do it like so:
7777

78-
```bash
78+
```sh
7979
git clone https://github.com/gitpython-developers/GitPython
8080
cd GitPython
8181
./init-tests-after-clone.sh
@@ -85,15 +85,15 @@ On Windows, `./init-tests-after-clone.sh` can be run in a Git Bash shell.
8585

8686
If you are cloning[your own fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks), then replace the above`git clone` command with one that gives the URL of your fork. Or use this[`gh`](https://cli.github.com/) command (assuming you have`gh` and your fork is called`GitPython`):
8787

88-
```bash
88+
```sh
8989
gh repo clone GitPython
9090
```
9191

9292
Having cloned the repo, create and activate your[virtual environment](https://docs.python.org/3/tutorial/venv.html).
9393

9494
Then make an[editable install](https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs):
9595

96-
```bash
96+
```sh
9797
pip install -e".[test]"
9898
```
9999

@@ -105,7 +105,7 @@ In rare cases, you may want to work on GitPython and one or both of its [gitdb](
105105

106106
If you want to do that*and* you want the versions in GitPython's git submodules to be used, then pass`-e git/ext/gitdb` and/or`-e git/ext/gitdb/gitdb/ext/smmap` to`pip install`. This can be done in any order, and in separate`pip install` commands or the same one, so long as`-e` appears before*each* path. For example, you can install GitPython, gitdb, and smmap editably in the currently active virtual environment this way:
107107

108-
```bash
108+
```sh
109109
pip install -e".[test]" -e git/ext/gitdb -e git/ext/gitdb/gitdb/ext/smmap
110110
```
111111

@@ -141,53 +141,51 @@ you will encounter test failures.
141141

142142
Ensure testing libraries are installed. This is taken care of already if you installed with:
143143

144-
```bash
144+
```sh
145145
pip install -e".[test]"
146146
```
147147

148-
Otherwise, you can run:
149-
150-
```bash
151-
pip install -r test-requirements.txt
152-
```
148+
If you had installed with a command like`pip install -e .` instead, you can still run
149+
the above command to add the testing dependencies.
153150

154151
####Test commands
155152

156153
To test, run:
157154

158-
```bash
155+
```sh
159156
pytest
160157
```
161158

162-
To lint, and apply automatic code formatting, run:
159+
To lint, and applysome linting fixes as well asautomatic code formatting, run:
163160

164-
```bash
161+
```sh
165162
pre-commit run --all-files
166163
```
167164

168-
- Linting without modifying code can be done with:`make lint`
169-
- Auto-formatting without other lint checks can be done with:`black .`
165+
This includes the linting and autoformatting done by Ruff, as well as some other checks.
170166

171167
To typecheck, run:
172168

173-
```bash
169+
```sh
174170
mypy -p git
175171
```
176172

177173
####CI (and tox)
178174

179-
The same linting, and running tests on all the different supported Python versions, will be performed:
175+
Style and formatting checks, and running tests on all the different supported Python versions, will be performed:
180176

181177
- Upon submitting a pull request.
182178
- On each push,*if* you have a fork with GitHub Actions enabled.
183179
- Locally, if you run[`tox`](https://tox.wiki/) (this skips any Python versions you don't have installed).
184180

185181
####Configuration files
186182

187-
Specific tools:
183+
Specific tools are all configured in the`./pyproject.toml` file:
188184

189-
- Configurations for`mypy`,`pytest`,`coverage.py`, and`black` are in`./pyproject.toml`.
190-
- Configuration for`flake8` is in the`./.flake8` file.
185+
-`pytest` (test runner)
186+
-`coverage.py` (code coverage)
187+
-`ruff` (linter and formatter)
188+
-`mypy` (type checker)
191189

192190
Orchestration tools:
193191

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp