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

Commit143b927

Browse files
committed
TODO: Removed all entries but left a mesage about where to find the issuee on lighthouse.
README/intro.rst: added information about the new repository at githubtree: added marker to indicate that submodules would have to be returned there
1 parent22a0289 commit143b927

File tree

4 files changed

+28
-151
lines changed

4 files changed

+28
-151
lines changed

‎README

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,37 +4,44 @@ GitPython
44

55
GitPython is a python library used to interact with Git repositories.
66

7-
GitPython is a port of thegrit_ library in Ruby created by
7+
GitPython is a port of thegrit library in Ruby created by
88
Tom Preston-Werner and Chris Wanstrath.
99

10-
.. _grit: http://grit.rubyforge.org
1110

1211
REQUIREMENTS
1312
============
1413

15-
* Git_ tested with 1.5.3.7
16-
* `Python Nose`_ - used for running the tests
17-
* `Mock by Michael Foord`_ used for tests. Requires 0.4
18-
19-
.. _Git: http://git.or.cz/
20-
.. _Python Nose: http://code.google.com/p/python-nose/
21-
.. _Mock by Michael Foord: http://www.voidspace.org.uk/python/mock.html
14+
* Git ( tested with 1.5.3.7 )
15+
* Python Nose - used for running the tests
16+
* Mock by Michael Foord used for tests. Requires 0.5
2217

2318
INSTALL
2419
=======
20+
If you have downloaded the source code:
2521

2622
python setup.py install
23+
24+
or if you want to obtain a copy more easily:
25+
26+
easy_install gitpython
27+
28+
A distribution package can be obtained for manual installation at:
29+
30+
http://pypi.python.org/pypi/GitPython
2731

2832
SOURCE
2933
======
3034

31-
GitPython's git repo is available on Gitorious, which can be browsed at:
35+
GitPython's git repo is available on Gitorious and GitHub, which can be browsed at:
3236

3337
http://gitorious.org/projects/git-python/
38+
http://github.com/Byron/GitPython
39+
40+
and cloned using:
3441

35-
and cloned from:
42+
git clone git://gitorious.org/git-python/mainline.git git-python
43+
git clone git://github.com/Byron/GitPython.git git-python
3644

37-
git://gitorious.org/git-python/mainline.git
3845

3946
LICENSE
4047
=======

‎TODO

Lines changed: 2 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -1,139 +1,7 @@
1-
====
2-
TODO
3-
====
1+
For a list of tickets, please visit
2+
http://byronimo.lighthouseapp.com/projects/51787-gitpython/overview
43

5-
General
6-
-------
7-
* Classes requiring repo actually only need the git command - this should be
8-
changed to limit their access level and make things a little safer.
9-
* Check for correct usage of id, ref and hexsha and define their meanings,
10-
currently its not so clear what id may be in cases or not - afaik its usually
11-
a sha or ref unless cat-file is used where it must be a sha
12-
* Overhaul command caching - currently its possible to create many instances of
13-
the std-in command types, as it appears they are not killed when the repo gets
14-
deleted.
15-
* git command on windows may be killed using the /F options which probably is like
16-
SIGKILL. This is bad as the process might be doing something, leaving the resource
17-
locked and/or in an inconsistent state. Without the /F option, git does not terminate
18-
itself, probably it listens to SIGINT which is not sent by TASKKILL. We can't really
19-
help it, but may be at some point git handles windows signals properly.
20-
21-
Object
22-
------
23-
* DataStream method should read the data itself. This would be easy once you have
24-
the actul loose object, but will be hard if it is in a pack. In a distant future,
25-
we might be able to do that or at least implement direct object reading for loose
26-
objects ( to safe a command call ). Currently object information comes from
27-
persistent commands anyway, so the penalty is not that high. The data_stream
28-
though is not based on persistent commands.
29-
It would be good to improve things there as cat-file keeps all the data in a buffer
30-
before it writes it. Hence it does not write to a stream directly, which can be
31-
bad if files are large, say 1GB :).
32-
33-
Config
34-
------
35-
* Cache the config_reader of the repository and check whether they need to
36-
update their information as the local file(s) have changed. Currently
37-
we re-read all configuration data each time a config-reader is created.
38-
In a way this leaves it to the user to actually keep the config-reader for
39-
multiple uses, but there are cases when the user can hardly do that.
404

41-
Diff
42-
----
43-
* Check docs on diff-core to be sure the raw-format presented there can be read
44-
properly:
45-
- http://www.kernel.org/pub/software/scm/git-core/docs/gitdiffcore.html
465

47-
Docs
48-
----
49-
* Overhaul docs - check examples, check looks, improve existing docs
50-
* Config: auto-generated module does not appear at all ( except for two lines )
51-
- its probably related to some fishy error lines:
52-
:0: (ERROR/3) Unexpected indentation.
53-
:0: (ERROR/3) Unexpected indentation.
54-
* Rewrite doc-strings to use default sphinx fields, such as :param x:
556

56-
Index
57-
-----
58-
* [advanced]
59-
write_tree should write a tree directly, which would require ability to create
60-
objects in the first place. Should be rather simple as it is
61-
"tree" bytes datablock | sha1sum and zipped.
62-
Currently we use some file swapping and the git command to do it which probably
63-
is much slower. The thing is that properly writing a tree from an index involves
64-
creating several tree objects, so in the end it might be slower.
65-
Hmm, probably its okay to use the command unless we go c(++)
66-
* Implement diff so that temporary indices can be used as well ( using file swapping )
67-
* Proper merge handling with index and working copy
68-
* Checkout individual blobs using the index and git-checkout. Blobs can already
69-
be written using their stream_data method.
70-
* index.add: could be implemented in python together with hash-object, allowing
71-
to keep the internal entry cache and write once everything is done. Problem
72-
would be that all other git commands are unaware of the changes unless the index
73-
gets written. Its worth an evaluation at least.
74-
A problem going with it is that there might be shell-related limitations on non-unix
75-
where the commandline grows too large.
76-
* index.remove: On windows, there can be a command line length overflow
77-
as we pass the paths directly as argv. This is as we use git-rm to be able
78-
to remove whole directories easily. This could be implemented using
79-
git-update-index if this becomes an issue, but then we had to do all the globbing
80-
and directory removal ourselves
81-
* commit: advance head = False - tree object should get the base commit wrapping
82-
that index uses after writing itself as tree. Perhaps it would even be better
83-
to have a Commit.create method from a tree or from an index. Allowing the
84-
latter would be quite flexible and would fit into the system as refs have
85-
create methods as well
86-
87-
Refs
88-
-----
89-
* For performance reasons it would be good to reimplement git-update-ref to be
90-
fully equivalent to what the command does. Currently it does some checking and
91-
handles symbolic refs as well as normal refs, updating the reflog if required.
92-
Its low-priority though as we don't set references directly that often.
93-
* I have read that refs can be symbolic refs as well which would imply the need
94-
to possibly dereference them. This makes sense as they originally where possibly
95-
a symbolic link. This would mean References could be derived from SymbolicReference
96-
officially, but it would still be bad as not all References are symbolic ones.
97-
* Making the reflog available as command might be useful actually. This way historical
98-
references/commits can be returned. Git internally manages this if refs are specified
99-
with HEAD@{0} for instance
100-
* Possibly follow symbolic links when manually parsing references by walking the
101-
directory tree. Currently the packed-refs file wouldn't be followed either.
102-
103-
Remote
104-
------
105-
* When parsing fetch-info, the regex will not allow spaces in the target remote ref as
106-
I couldn't properly parse the optional space separated note in that case. Probably
107-
the regex should be improved to handle this gracefully.
108-
109-
Repo
110-
----
111-
* Blame: Read the blame format making assumptions about its structure,
112-
currently regex are used a lot although we can deduct what will be next.
113-
- Read data from a stream directly from git command
114-
* Figure out how to implement a proper merge API. It should be index based, but provide
115-
all necessary information to the ones willing to ask for it. The index implementation
116-
actually provides this already, but some real use-cases would be great to have a least.
1177

118-
119-
Submodules
120-
----------
121-
* add submodule support
122-
* see tree
123-
124-
TestSystem
125-
----------
126-
* Figure out a good way to indicate the required presense of a git-daemon to host
127-
a specific path. Ideally, the system would detect the missing daemon and inform
128-
the user about the required command-line to start the daemon where we need it.
129-
Reason for us being unable to start a daemon is that it will always fork - we can
130-
only kill itself, but not its children. Even if we would a pgrep like match, we still
131-
would not know whether it truly is our daemons - in that case user permissions should
132-
stop us though.
133-
134-
Tree
135-
----
136-
* Should return submodules during iteration ( identifies as commit )
137-
* Work through test and check for test-case cleanup and completeness ( what about
138-
testing whether it raises on invalid input ? ). See 6dc7799d44e1e5b9b77fd19b47309df69ec01a99
139-

‎doc/intro.rst

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,13 +68,15 @@ An organized section of the GitPthon API is at :ref:`api_reference_toplevel`.
6868
Source Code
6969
===========
7070

71-
GitPython's git repo is available on Gitorious, which can be browsed at:
71+
GitPython's git repo is available on Gitorious and GitHub, which can be browsed at:
7272

73-
http://gitorious.org/projects/git-python/
73+
* http://gitorious.org/projects/git-python/
74+
* http://github.com/Byron/GitPython
7475

75-
and clonedfrom:
76+
and clonedusing::
7677

77-
git://gitorious.org/git-python/mainline.git
78+
$ git clone git://gitorious.org/git-python/mainline.git git-python
79+
$ git clone git://github.com/Byron/GitPython.git git-python
7880

7981
License Information
8082
===================

‎lib/git/objects/tree.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ def _iter_from_data(self):
132132
eliftype_id==self.tree_id:
133133
yieldTree(self.repo,hexsha,mode,path)
134134
eliftype_id==self.commit_id:
135-
#todo
135+
#submodules
136136
yieldNone
137137
else:
138138
raiseTypeError("Unknown type found in tree data %i for path '%s'"% (type_id,path))

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp