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

Commit26f9b9f

Browse files
committed
Merge remote-tracking branch 'upstream/master'
Conflicts:git/util.py
2 parentsf0fcc07 +833ac6e commit26f9b9f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+2068
-1542
lines changed

‎.appveyor.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# CI on Windows via appveyor
2+
environment:
3+
GIT_DAEMON_PATH:"C:\\Program Files\\Git\\mingw64\\libexec\\git-core"
4+
CYGWIN_GIT_PATH:"C:\\cygwin\\bin;%GIT_DAEMON_PATH%"
5+
CYGWIN64_GIT_PATH:"C:\\cygwin64\\bin;%GIT_DAEMON_PATH%"
6+
7+
matrix:
8+
## MINGW
9+
#
10+
-PYTHON:"C:\\Python27"
11+
PYTHON_VERSION:"2.7"
12+
GIT_PATH:"%GIT_DAEMON_PATH%"
13+
-PYTHON:"C:\\Python34-x64"
14+
PYTHON_VERSION:"3.4"
15+
GIT_PATH:"%GIT_DAEMON_PATH%"
16+
-PYTHON:"C:\\Python35-x64"
17+
PYTHON_VERSION:"3.5"
18+
GIT_PATH:"%GIT_DAEMON_PATH%"
19+
-PYTHON:"C:\\Miniconda35-x64"
20+
PYTHON_VERSION:"3.5"
21+
IS_CONDA:"yes"
22+
GIT_PATH:"%GIT_DAEMON_PATH%"
23+
24+
# ## Cygwin
25+
# #
26+
# - PYTHON: "C:\\Miniconda-x64"
27+
# PYTHON_VERSION: "2.7"
28+
# IS_CONDA: "yes"
29+
# GIT_PATH: "%CYGWIN_GIT_PATH%"
30+
# - PYTHON: "C:\\Python34-x64"
31+
# PYTHON_VERSION: "3.4"
32+
# GIT_PATH: "%CYGWIN_GIT_PATH%"
33+
# - PYTHON: "C:\\Python35-x64"
34+
# PYTHON_VERSION: "3.5"
35+
# GIT_PATH: "%CYGWIN64_GIT_PATH%"
36+
37+
38+
install:
39+
-set PATH=%PYTHON%;%PYTHON%\Scripts;%GIT_PATH%;%PATH%
40+
41+
## Print configuration for debugging.
42+
#
43+
-|
44+
echo %PATH%
45+
uname -a
46+
where git git-daemon python pip pip3 pip34
47+
python --version
48+
python -c "import struct; print(struct.calcsize('P') * 8)"
49+
50+
-IF "%IS_CONDA%"=="yes" (
51+
conda info -a &
52+
conda install --yes --quiet pip
53+
)
54+
-pip install nose ddt wheel coveralls
55+
-IF "%PYTHON_VERSION%"=="2.7" (
56+
pip install mock
57+
)
58+
59+
## Copied from `init-tests-after-clone.sh`.
60+
#
61+
-|
62+
git submodule update --init --recursive
63+
git fetch --tags
64+
git tag __testing_point__
65+
git checkout master || git checkout -b master
66+
git reset --hard HEAD~1
67+
git reset --hard HEAD~1
68+
git reset --hard HEAD~1
69+
git reset --hard __testing_point__
70+
71+
## For commits performed with the default user.
72+
-|
73+
git config --global user.email "travis@ci.com"
74+
git config --global user.name "Travis Runner"
75+
76+
-pip install -e .
77+
78+
build:false
79+
80+
test_script:
81+
-nosetests -v --with-coverage
82+
83+
#on_success:
84+
# - IF "%PYTHON_VERSION%"=="3.4" (coveralls)

‎.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
git/test/fixtures/*eol=lf
2+
init-tests-after-clone.sh

‎.travis.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ git:
1616
install:
1717
-git submodule update --init --recursive
1818
-git fetch --tags
19-
-pip install coveralls flake8 sphinx
19+
-pip install coveralls flake8ddtsphinx
2020

2121
# generate some reflog as git-python tests need it (in master)
2222
-./init-tests-after-clone.sh
@@ -29,10 +29,11 @@ install:
2929
-cat git/test/fixtures/.gitconfig >> ~/.gitconfig
3030
script:
3131
# Make sure we limit open handles to see if we are leaking them
32-
-ulimit -n96
32+
-ulimit -n110
3333
-ulimit -n
3434
-nosetests -v --with-coverage
35-
-flake8
36-
-cd doc && make html
35+
-if [ "$TRAVIS_PYTHON_VERSION" == '3.4' ]; then flake8; fi
36+
-if [ "$TRAVIS_PYTHON_VERSION" == '3.5' ]; then cd doc && make html; fi
37+
-
3738
after_success:
3839
-coveralls

‎README.md

Lines changed: 46 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,28 @@
11
##GitPython
22

3-
GitPython is a python library used to interact with git repositories, high-level like git-porcelain, or low-level like git-plumbing.
3+
GitPython is a python library used to interact with git repositories, high-level like git-porcelain,
4+
or low-level like git-plumbing.
45

5-
It provides abstractions of git objects for easy access of repository data, and additionally allows you to access the git repository more directly using either a pure python implementation, or the faster, but more resource intensive git command implementation.
6+
It provides abstractions of git objects for easy access of repository data, and additionally
7+
allows you to access the git repository more directly using either a pure python implementation,
8+
or the faster, but more resource intensive*git command* implementation.
69

7-
The object database implementation is optimized for handling large quantities of objects and large datasets, which is achieved by using low-level structures and data streaming.
10+
The object database implementation is optimized for handling large quantities of objects and large datasets,
11+
which is achieved by using low-level structures and data streaming.
812

913

1014
###REQUIREMENTS
1115

12-
GitPython needs the`git` executable to be installed on the system and available in your`PATH` for most operations. If it is not in your`PATH`, you can help GitPython find it by setting the`GIT_PYTHON_GIT_EXECUTABLE=<path/to/git>` environment variable.
16+
GitPython needs the`git` executable to be installed on the system and available
17+
in your`PATH` for most operations.
18+
If it is not in your`PATH`, you can help GitPython find it by setting
19+
the`GIT_PYTHON_GIT_EXECUTABLE=<path/to/git>` environment variable.
1320

1421
* Git (1.7.x or newer)
1522
* Python 2.7 to 3.5, while python 2.6 is supported on a*best-effort basis*.
1623

17-
The list of dependencies are listed in`./requirements.txt` and`./test-requirements.txt`. The installer takes care of installing them for you.
24+
The list of dependencies are listed in`./requirements.txt` and`./test-requirements.txt`.
25+
The installer takes care of installing them for you.
1826

1927
###INSTALL
2028

@@ -31,7 +39,7 @@ Both commands will install the required package dependencies.
3139
A distribution package can be obtained for manual installation at:
3240

3341
http://pypi.python.org/pypi/GitPython
34-
42+
3543
If you like to clone from source, you can do it like so:
3644

3745
```bash
@@ -45,7 +53,7 @@ git submodule update --init --recursive
4553
####Leakage of System Resources
4654

4755
GitPython is not suited for long-running processes (like daemons) as it tends to
48-
leak system resources. It was written in a time where destructors (as implemented
56+
leak system resources. It was written in a time where destructors (as implemented
4957
in the`__del__` method) still ran deterministically.
5058

5159
In case you still want to use it in such a context, you will want to search the
@@ -54,19 +62,37 @@ codebase for `__del__` implementations and call these yourself when you see fit.
5462
Another way assure proper cleanup of resources is to factor out GitPython into a
5563
separate process which can be dropped periodically.
5664

65+
####Windows support
66+
67+
For*Windows*, we do regularly test it on[Appveyor CI](https://www.appveyor.com/)
68+
but not all test-cases pass - you may help improve them by exploring
69+
[Issue#525](https://github.com/gitpython-developers/GitPython/issues/525).
70+
71+
####Python 2.6
72+
73+
Python 2.6 is supported on best-effort basis; which means that it is likely to deteriorate over time.
74+
5775
###RUNNING TESTS
5876

59-
*Important*: Right after cloning this repository, please be sure to have executed the`init-tests-after-clone.sh` script in the repository root. Otherwise you will encounter test failures.
77+
*Important*: Right after cloning this repository, please be sure to have executed
78+
the`./init-tests-after-clone.sh` script in the repository root. Otherwise
79+
you will encounter test failures.
6080

61-
The easiest way to run test is by using[tox](https://pypi.python.org/pypi/tox) a wrapper around virtualenv. It will take care of setting up environnements with the proper dependencies installed and execute test commands. To install it simply:
81+
On*Windows*, make sure you have`git-daemon` in your PATH. For MINGW-git, the`git-daemon.exe`
82+
exists in`Git\mingw64\libexec\git-core\`; CYGWIN has no daemon, but should get along fine
83+
with MINGW's.
84+
85+
The easiest way to run tests is by using[tox](https://pypi.python.org/pypi/tox)
86+
a wrapper around virtualenv. It will take care of setting up environnements with the proper
87+
dependencies installed and execute test commands. To install it simply:
6288

6389
pip install tox
6490

6591
Then run:
6692

6793
tox
68-
69-
94+
95+
7096
For more fine-grained control, you can use`nose`.
7197

7298
###Contributions
@@ -79,7 +105,8 @@ Please have a look at the [contributions file][contributing].
79105
*[Questions and Answers](http://stackexchange.com/filters/167317/gitpython)
80106
* Please post on stackoverflow and use the`gitpython` tag
81107
*[Issue Tracker](https://github.com/gitpython-developers/GitPython/issues)
82-
* Post reproducible bugs and feature requests as a new issue. Please be sure to provide the following information if posting bugs:
108+
* Post reproducible bugs and feature requests as a new issue.
109+
Please be sure to provide the following information if posting bugs:
83110
* GitPython version (e.g.`import git; git.__version__`)
84111
* Python version (e.g.`python --version`)
85112
* The encountered stack-trace, if applicable
@@ -95,20 +122,24 @@ Please have a look at the [contributions file][contributing].
95122
* Finally, set the upcoming version in the`VERSION` file, usually be
96123
incrementing the patch level, and possibly by appending`-dev`. Probably you
97124
want to`git push` once more.
98-
125+
99126
###LICENSE
100127

101128
New BSD License. See the LICENSE file.
102129

103130
###DEVELOPMENT STATUS
104131

105132
[![Build Status](https://travis-ci.org/gitpython-developers/GitPython.svg)](https://travis-ci.org/gitpython-developers/GitPython)
133+
[![Build status](https://ci.appveyor.com/api/projects/status/0f3pi3c00hajlrsd/branch/master?svg=true&passingText=windows%20OK&failingText=windows%20failed)](https://ci.appveyor.com/project/Byron/gitpython/branch/master)
106134
[![Code Climate](https://codeclimate.com/github/gitpython-developers/GitPython/badges/gpa.svg)](https://codeclimate.com/github/gitpython-developers/GitPython)
107135
[![Documentation Status](https://readthedocs.org/projects/gitpython/badge/?version=stable)](https://readthedocs.org/projects/gitpython/?badge=stable)
136+
[![Stories in Ready](https://badge.waffle.io/gitpython-developers/GitPython.png?label=ready&title=Ready)](https://waffle.io/gitpython-developers/GitPython)
137+
[![Throughput Graph](https://graphs.waffle.io/gitpython-developers/GitPython/throughput.svg)](https://waffle.io/gitpython-developers/GitPython/metrics/throughput)
108138

109-
Now that there seems to be a massive user base, this should be motivation enough to let git-python return to a proper state, which means
139+
Now that there seems to be a massive user base, this should be motivation enough to let git-python
140+
return to a proper state, which means
110141

111142
* no open pull requests
112143
* no open issues describing bugs
113144

114-
[contributing]:https://github.com/gitpython-developers/GitPython/blob/master/README.md
145+
[contributing]:https://github.com/gitpython-developers/GitPython/blob/master/CONTRIBUTING.md

‎doc/source/conf.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@
5050
# built documents.
5151
#
5252
# The short X.Y version.
53-
VERSION=open(os.path.join(os.path.dirname(__file__),"..","..",'VERSION')).readline().strip()
53+
withopen(os.path.join(os.path.dirname(__file__),"..","..",'VERSION'))asfd:
54+
VERSION=fd.readline().strip()
5455
version=VERSION
5556
# The full version, including alpha/beta/rc tags.
5657
release=VERSION

‎doc/source/index.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ GitPython Documentation
99
:maxdepth:2
1010

1111
intro
12-
whatsnew
1312
tutorial
1413
reference
1514
roadmap

‎doc/source/intro.rst

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Requirements
1515

1616
* `Python`_ 2.7 or newer
1717
Since GitPython 2.0.0. Please note that python 2.6 is still reasonably well supported, but might
18-
deteriorate over time.
18+
deteriorate over time. Support is provided on a best-effort basis only.
1919
* `Git`_ 1.7.0 or newer
2020
It should also work with older versions, but it may be that some operations
2121
involving remotes will not work as expected.
@@ -75,6 +75,12 @@ codebase for `__del__` implementations and call these yourself when you see fit.
7575
Another way assure proper cleanup of resources is to factor out GitPython into a
7676
separate process which can be dropped periodically.
7777

78+
Best-effort for Python 2.6 and Windows support
79+
----------------------------------------------
80+
81+
This means that support for these platforms is likely to worsen over time
82+
as they are kept alive solely by their users, or not.
83+
7884
Getting Started
7985
===============
8086

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp