| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
https://huntr.dev/bounties/8549d81f-dc45-4af7-9f2a-2d70752d8524/
|
| |
|
|
|
|
| |
To create a window application with pyinstaller, all suprocess input and output streams must be assigned and must not be None.
https://stackoverflow.com/a/51706087/7076612
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix #971. Partly resolve #703.
If the hook doesn't have a file extension, then Windows won't know how
to run it and you'll get "[WinError 193] %1 is not a valid Win32
application". It's very likely that it's a shell script of some kind, so
use bash.exe (commonly installed via Windows Subsystem for Linux). We
don't want to run all hooks with bash because they could be .bat files.
Update tests to get several hook ones working. More work necessary to
get commit-msg hook working. The hook writes to the wrong file because
it's not using forward slashes in the path:
C:\Users\idbrii\AppData\Local\Temp\bare_test_commit_msg_hook_successy5fo00du\CUsersidbriiAppDataLocalTempbare_test_commit_msg_hook_successy5fo00duCOMMIT_EDITMSG
|
|
|
| |
This should not be imported at root level, since it adds a lot of initialization overhead without need.
|
|
|
| |
This should not be imported at root level, since it adds a lot of initialization overhead without need.
|
|
|
|
| |
A regression that was introduced with d79d20d.
|
| |
|
|
|
|
| |
This reverts commit 01f09888208341876d1480bd22dc8f4107c100f1.
|
|
|
|
|
|
|
| |
The whitespace handling and trailer selection isn't very trivial or good
documented. It therefore seemed easier and less error prone to just call
git to parse the message for the trailers section and remove superfluos
whitespaces.
|
|
|
|
|
|
|
|
| |
With the command `git interpret-trailers` git provides a way to interact
with trailer lines in the commit messages that look similar to RFC 822
e-mail headers (see: https://git-scm.com/docs/git-interpret-trailers).
The new property returns those parsed trailer lines from the message as
dictionary.
|
|
|
| |
Use NUL character instead of semicolon to extract meta and path. Avoid errors in during git diff when dealing with filenames containing semicolons
|
|
|
|
|
|
|
| |
This isn't needed as git will replace this file atomicially,
hence we always see a fully written file when reading.
Only when writing we need to obtain a lock.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
List-like, so that it's backward compatible. But it has a new method
raise_on_error, that throws an exception if anything failed to push.
Related to #621
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 53d94b8091b36847bb9e495c76bb5a3ec2a2fdb5.
The reason for the revert is that the commit in question introduced a
regression where certain modules, functions and classes that were
exposed before were no longer exposed.
See https://github.com/gitpython-developers/GitPython/pull/1352#issuecomment-932757204
for additional information.
|
|
|
|
|
|
|
| |
All `from <module> import *` has now been replaced by
`from <module> import X, Y, ...`.
Contributes to #1349
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
delete_head and Head.delete historically accept either Head objects
or a str name of a head. Adjust the typing to match. This
unfortunately requires suppressing type warnings in the signature of
RemoteReference.delete, since it inherits from Head but does not
accept str (since it needs access to the richer data of
RemoteReference).
Using assignment to make add an alias for create unfortunately
confuses mypy, since it loses track of the fact that it's a
classmethod and starts treating it like a staticmethod. Replace
with a stub wrapper instead.
|
|
|
|
| |
tests use it
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| | |
General fixes for next release
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | |
| | |
| | |
| | | |
Fixes #1334
|
| | |
| | |
| | |
| | | |
Add encoding to utf-8 for fetch_head_info;
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allow the GitCommandWrapperType definition to be used within the Repo
classmethods. This change follows the intended purpose as stated in
the code, "Subclasses may easily bring in their own custom types by
placing a constructor or type here."
The usecase that prompted this change has to do with
`GIT_SSH_COMMAND`. The goal is to setup a custom `Git` class with
knowledge of the value, something like as follows
```python
from git import Git as BaseGit, Repo as BaseRepo
class Git(BaseGit):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# For example, assign the SSH command using the current flask
# app's configured setting.
self.update_environment(GIT_SSH_COMMAND=current_app.config['GIT_SSH_COMMAND'])
class Repo(BaseRepo):
GitCommandWrapperType = _Git
```
With this change, the above example will allow the developer to use
`Repo.clone_from(...)` with the indended outcome. Otherwise the
developer will have two differing result when using `Repo(...)` vs
`Repo.clone_from(...)`.
|
|/ / |
|
|\ \ |
|
| | | |
|
| | |
| | |
| | | |
This won't try and do something silly like convert `username=1` to a number.
|
|\ \ \
| |/ / |
|
| |/ |
|