| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
information retrieval
|
|
|
|
|
|
|
| |
currently it cause hundreds of command invocations which is slow
Fixed issue with trees not properly initialized with their default mode
_set_cache_: some objects checked whether the attribute was within their __slots__ although it should have been accessed through its class
|
|
|
|
|
|
|
| |
output directly from the output stream
commit: now reads commit information directly from the output stream of the process by implementing its iterator method
repo: removed log method as it was redundant ( equal to the commits method )
|
|
|
|
| |
preparation for command changes
|
|
|
|
| |
different packages
|
|
|
|
| |
Removed tests that were testing that method
|
|
|
|
|
|
| |
dict as cache is a problem as the tree is ordered, added blobs, trees and traverse method
repo: remove blob function as blobs are created directly or iterated - primitve types should not clutter the repo interface
|
| |
|
| |
|
|
|
|
| |
_list_from_string to indicate their new status as private method, adjusted all callers respectively
|
| |
|
|
|
|
| |
existance was doubtful or unsafe
|
|
|
|
| |
mode is now generally an int compatible to the stat module
|
|
|
|
|
|
| |
return the same thing which does not work anymore - re-implemented it in a more dynamic manner, but in the end tests will have to be revised anyway
Added slots to Diff and Stats type respectively
|
|
|
|
| |
in fact so that changes are a little more self-contained and not depending on the actual source repository
|
|
|
|
| |
properly
|
|
|
|
| |
whether it bakes more. This also leads to more efficient use of memory as values are only cached and set when required - the baking system does not require an own tracking variable anymore, and values are only to be cached once - then python will natively find the cache without involving any additional overhead. This works by using __getattr__ instead of __get_attribute__ which would always be called
|
| |
|
|
|
|
| |
editor to work with the files properly. Can convert it back for releaes
|
|
|
|
| |
dyamically checks the existance of tags within the repository - it basically tests the interface and checks that expected return types are actually returned
|
|
|
|
| |
test is in place which still fails on purpose. Need to integrate tags which can be objects or just a special form of a ref
|
|
|
|
| |
it would make existing code incompatible in some places
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
previous one which never ran
removed old tests which were commented out
test_achive* method didn't actually call the functions, but only derefenced them
|
| |
| |
| |
| |
| |
| | |
path ( in the 'name' member variable ), the a|b_path members of Diff have been removed. Tests were adjusted and run
Diff docs have been updated to provide a little more information on specifics cases
|
| |
| |
| |
| | |
individual characters
|
|\ \
| | |
| | |
| | |
| | | |
* commit 'JonNordby/master':
implemented equality operations on Commit objects
|
| |/ |
|
|/ |
|
| |
|
|
|
|
| |
(cherry picked from commit 88852ed7bcde4f4b18c1ae8b6fba7f3fab8e9bf5)
|
|
|
|
|
|
|
|
|
| |
Git allows branches to be named and organized using path components, e.g using
a branch called "refactoring/feature1", which gets stored under
refs/heads/refactoring/feature1. The previous code omitted everything but the
last path component giving the name "feature1" instead of
"refactoring/feature1" for the branch. This changeset fixes that.
(cherry picked from commit dc4738bc53e580754e47037e26c7eec3047aeb69)
|
| |
|
|
|
|
|
| |
Adds a summary property to the Commit object which returns just the first line of the commit message and makes the message property contain the entire commit message (previously the message property only contained the first line of the commit message). This breaks backwards compatibility a little in that the message property now contains a different value but previously there was no way to access the entire commit message from the Commit object and this is in keeping with git vocabulary, where message generally refers to the entire commit message.
(cherry picked from commit 9d2962d8306c894d4cca55bab551677b92d96352)
|
|
|
|
|
| |
The old diff parser in list_from_string took a large amount of time to parse long diffs, on one of my repositories it took over 3 minutes to parse the initial commit. The new parser uses a single regexp to match the header of a diff, and iterates over the each individual diff by splitting the entire string by the diff seperator, attempting to match the header for each individual diff. With the new parser parsing the same repository is almost instant, woohoo!
(cherry picked from commit 5b6b27f153bdc30380bea12a528ef483571dd57a)
|
|
|
|
|
| |
The path parameter allows you to specify a path to constrain queries by. This changes potentially breaks backwards compatibility for the Repo.commits and Repo.commits_since methods as it moves the positional arguments.
(cherry picked from commit cc8a20e78da4864060bd0c9279633009bc10d871)
|
|
|
|
|
| |
When calling commands that accept treeish and path arguments and there is a path with the same name as a treeish git cowardly refuses to pick one and asks for the command to use the unambiguous syntax where '--' seperates the treeish from the paths. Add '--' to the git commands to indicate that the argument is a treeish and not a path.
(cherry picked from commit a9a57fa93a2b121ab9b17fcd6062b9a9c9740883)
|
| |
|
|
|
|
|
| |
doesn't need to do the same boring replacing I did.
(cherry picked from commit 10c62aa69193a8bc7b46ca24c2ad1d5008489665)
|
|
|
|
|
| |
The imported module is called git (as in "import git"), so it's less
confusing to do so than to call everything GitPython.something.
|
|\ |
|
| |
| |
| |
| | |
currently active branch.
|
| |
| |
| |
| |
| |
| |
| | |
working directory.
A working directory is dirty if it has any uncommitted changes (in the working
directory or in the index). Bare repositories are by nature always clean.
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Do this:
>>> repo.description = "Foo Bar"
>>> repo.description
'Foo Bar'
|
| |
| |
| |
| |
| |
| |
| | |
Now you can do this:
>>> exported = repo.daemon_export
>>> repo.daemon_export = True
|
| |
| |
| |
| | |
It doesn't use an object's private contents, so let's go...
|
| |
| |
| |
| |
| | |
It is rather intuitive to consider trees as a dict of objects (like
a directory could be seen as a dict of files).
|
| |
| |
| |
| |
| |
| |
| | |
It seems more natural to use a dictionnary for directories, since we
usually want to access them by name, and entry order is not relevant.
Also, finding a particular blob given its name is O(1) instead of O(N).
|