如您所知,https://android.googlesource.com/中列出了数百个项目。我想在windows机器上全部下载它们。根据谷歌的文件,
To install, initialize, and configure Repo:
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
To clone the entire platform, install repo, and run:
mkdir mydroid
cd mydroid
repo init -u https://android.googlesource.com/platform/manifest
repo sync
然而,在我的机器中,我不能在Git Bash中“repo init”,因为它说它没有python。我安装了python,但git bash无法识别它。 请注意,我也将python目录设置为系统路径。如果有人可以给出提示,我将不胜感激。感谢
更新:我认为新版Git Bash for Windows存在问题。系统路径根本不适用于Git Bash - 我可以轻松测试系统路径是否与命令提示符一起使用。无论如何,我尝试了这个,当然它实际上运行错误。
/c/python27/python.exe ../bin/repo init -u https://android.googlesource.com/platform/manifest
错误消息是
$ /c/python27/python.exe ../bin/repo init -u https://android.googlesource.com/platform/manifest
Traceback (most recent call last):
File "../bin/repo", line 91, in <module>
import readline
ImportError: No module named readline
行。我通过在windows中安装pyreadline来传递此错误:
easy_install pyreadline
如果出现错误,则必须从
安装setuptools http://pypi.python.org/pypi/setuptools#files
最后再次运行命令得到这个:
$ repo init -u https://android.googlesource.com/platform/manifest
fatal: unable to start d:\mywork\dev\GoogleAndroid\working_dir\.repo\repo/main.py
fatal: [Errno 8] Exec format error
答案 0 :(得分:6)
点击一次,从此处下载最新代码.tar.gz
文件
https://android.googlesource.com/platform/frameworks/base/+archive/master.tar.gz,可以在core
文件夹
修改强>
替代方案:
http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/
只需选择版本,然后选择其中的下载选项。
答案 1 :(得分:1)
作为一个例子,如果你考虑这个other program "sympy"也需要git bash和python,只需要在你的PATH 之前添加python 来启动git bash会话
从以下位置安装Python:
下载“Python 2.7 Windows安装程序”(或Python 2.6或2.5)并运行它 将python目录添加到系统环境路径变量
(My Computer -> Advanced -> Environment Variables -> Path -> Edit
)。
请注意,repo脚本本身必须位于路径中,如android的Version Control page中所述:
Repo是我们在Git之上构建的存储库管理工具。 Repo在必要时统一了许多Git存储库,上传到我们的版本控制系统,并自动执行Android开发工作流程的各个部分。
Repo并不是要取代Git,只是为了让它更容易在Android环境下使用Git repo命令是一个可执行的Python脚本,可以放在路径的任何位置。
答案 2 :(得分:1)
此答案解释了如何解决此错误:
fatal: unable to start c:\path\.repo\repo/main.py
fatal: [Errno 8] Exec format error
摘要:我最后使用了Cygwin打包的python
。
详情:以下是完整的故事。
tip from the repo
bug tracking是添加'/c/app/Python27/python '
:
REPO_MAIN = '/c/app/Python27/python ' + S_repo + '/main.py'
main
的开头)wrapper_path = '/c/app/Python27/python ' + os.path.abspath(__file__)
但我们收到错误TypeError: coercing to Unicode: need string or buffer, NoneType found
因此,我将上述更改还原并执行了以下其他更改(版本1.20):
REPO_MAIN = S_repo + '\\main.py'
python
绝对路径添加为me
的第一个元素:me = ['C:\\app\\Python27\\python.exe', repo_main,
'--repo-dir=%s' % rel_repo_dir,
'--wrapper-version=%s' % ver_str,
'--wrapper-path=%s' % wrapper_path,
'--']
os.execv(repo_main, me)
os.execv('C:\\app\\Python27\\python.exe', me)
但是我们仍然会出错:
$ Traceback (most recent call last):
File "c:\path\.repo\repo\main.py", line 39, in <module>
from subcmds.version import Version
File "c:\path\.repo\repo\subcmds\__init__.py", line 36, in <module>
['%s' % name])
File "c:\path\.repo\repo\subcmds\forall.py", line 17, in <module>
import fcntl
ImportError: No module named fcntl
Python v2.7 fcntl
documentation表示fcntl
仅适用于平台Unix。
我终于再次恢复repo
脚本中的所有更改并安装了Cygwin,包括其python
和git
包:它成功作为魅力。
但是,由于MSysGit无法识别由Cygwin模拟的符号链接,我们必须使用Cygwin git
。 git
之上的GUI不完全符合Cygwin git
...
(另见my other post)
编辑:
Cygwin can use native NTFS symlinks(只需设置CYGWIN=winsymlinks:native
并成为管理员)。因此可以使用MSysGit和基于它的任何其他GUI: - )