| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fix for #430 in bebc4f56 (Use correct mode for executable files,
2016-05-19) is incomplete. It fails (in most cases) when files have
modes which are not exactly 0644 or 0755.
Git only cares whether the executable bit is set (or not). Ensure the
mode we set for the index is either 100644 or 100755 based on whether
the executable bit is set for the file owner. Do this similarly to how
upstream git does it in cache.h¹.
Add a test covering various file modes to help catch regressions.
Fixes #1253
¹ https://github.com/git/git/blob/v2.31.1/cache.h#L247
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a replace method to git.Commit. The replace method returns a
copy of the Commit object with attributes replaced from keyword
arguments. For example:
>>> old = repo.head.commit
>>> new = old.replace(message='This is a test')
closes #1123
|
|
|
|
|
|
|
| |
The iterator used to yield Commit() objects, which does not play well
with inheritance. Yield cls() instead.
Signed-off-by: Yuri Volchkov <yuri@volch.org>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
In c96476b, the new default_name nested function does not contain a
retun statement. This leads to an issue when the environment variables
are not present, where the actor name would not be set.
Signed-off-by: Athos Ribeiro <athos@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Calling getpass.getuser may lead to breakage in environments where there
is no entries in the /etc/passwd file for the current user.
Setting the environment variables for the git user configurations should
prevents GitPython from using values from /etc/passwd. However, doing so
will not prevent reading /etc/passwd and looking for an entry with the
current user UID.
This patch changes the behavior described above so GitPython will
perform a lazy evaluation of /etc/passwd, only doing so when the
environment variables for the git user configuration are not available.
Signed-off-by: Athos Ribeiro <athos@redhat.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's possible to specify a pathspec (eg :!foo) to git diff/status/...
but it currently fails with:
git.exc.GitCommandError: Cmd('/usr/bin/git') failed due to: exit code(128)
cmdline: /usr/bin/git diff --abbrev=40 --full-index --raw :!foo
stderr: 'fatal: ambiguous argument ':!foo': unknown revision or path not in the working tree.
Add missing '--' to the arguments to fix this ambiguity
Signed-off-by: Arnaud Patard <apatard@hupstream.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
There's no easy way to re-create a commit (i.e. for rewriting purposes), because dates must be formatted as strings, passed, then parsed back.
This patch allows parse_date() to accept datetime instances, such as those produced by from_timestamp() above.
|
|
|
|
|
|
|
|
|
| |
which installs the current codebase in a venv
and runs 'import git' to test if codebase can be
installed properly.
This adds virtualenv to the test requirements
Signed-off-by: Konrad Weihmann <kweihmann@outlook.com>
|
|
|
|
|
|
|
|
|
| |
This should ensure that tests are NOT packaged into
release package by setuptools, as tests are development
only
+ fixtures after moving
Signed-off-by: Konrad Weihmann <kweihmann@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
This should ensure that tests are NOT packaged into
release package by setuptools, as tests are development
only
+ fixtures after moving
Signed-off-by: Konrad Weihmann <kweihmann@outlook.com>
|
|
|
|
| |
adjusted
|
| |
|
|
|
|
| |
value, and is not using ORIG_HEAD anymore
|
| |
|
| |
|
|
|
|
| |
entries, including test
|
|
|
|
|
|
| |
message much better
Added test for deletion of reflog file when the corresponding ref is deleted
|
|
|
|
| |
gets written
|
| |
|
|
|
|
| |
much easier. There is some bug in it though, it still needs fixing
|
|
|
|
| |
support which cannot be exposed using the respective property. Ref-Creation is now fully implemented in python. For details, see doc/source/changes.rst
|
| |
|
|
|
|
|
|
| |
actually write_append the new entry, instead of rewriting the whole file. Added file-locking and directory handling, so the implementation should be similar (enough) to the git reference implementation.
Next up is to implement a way to update the reflog when changing references, which is going to be a little more complicated
|