2012-11-26 15 views
30

私はこのように、そのうちの一つが、ピップとのpythonモジュールインストールされ、多くのフォルダにgitリポジトリを持っている:pipを使ってgitサブディレクトリからインストールするにはどうしたらいいですか?

repo.git/ 
repo.git/folder1/ 
repo.git/folder2/ 
repo.git/mymodule/ 
repo.git/mymodule/__init__.py 
repo.git/mymodule/setup.py 
repo.git/mymodule/... 

を今私がインストールするには、次の操作を実行する必要があります。

git clone http://server/repo.git 
cd repo 
pip install mymodule 
cd .. 
rm -rf repo 

明示的に複製せずにピップでモジュールを直接インストールすることは可能ですか?

は、私が試した:

pip install git+https://server/repo.git/mymodule/ 
pip install git+https://server/repo.git:mymodule/ 

しかし、私は得る:

IOError: [Errno 2] No such file or directory: '/tmp/pip-88tlLm-build/setup.py' 
+1

この質問は既に回答済みと思われます:http://stackoverflow.com/questions/10847764/pip-install-from-git-repo – synthesizerpatel

+0

あなたがリンクしている質問は、MANIFEST.inが存在しないためにファイルが見つからなかったことです。私の質問は、pipを使ってサブディレクトリをインストールする方法です。リポジトリ全体を複製してパッケージをインストールできるので、ファイルが見つからないわけではありません。 –

+0

@synthesizerpatelあなたがリンクした質問は異なることを尋ねますが、タイトルは誤解を招いていましたので、私はそれを修正しました。あなたは(私が推測する)downvoteを削除することを検討することができます。 –

答えて

45

は、この機能に関するpull requestがあり、そしてそれはヶ月前にブランチを開発するためにマージされているようです。構文はfollowingです:

pip install -e git+https://git.repo/some_repo.git#egg=version_subpkg&subdirectory=repo # install a python package from a repo subdirectory 

我々は、おそらくそれがマスターする合併しますと、配布されるまでしばらく待たなければなりません。

+0

ありがとうございました! –

+3

私はちょうどそれをチェックしました。それは2014年1月1日にリリースされたpip v1.5の一部です:https://github.com/pypa/pip/blob/develop/CHANGES.txt – tomka

+1

[特定の変更履歴エントリ](https:// github .com/pypa/pip/blob/54de36d9aee18b23379cd417dcc6ede3c0d93f96/CHANGES.txt#L57)がこの機能がマージされたpip v1.5にあります。 –

関連する問題