背景:
在Linux环境下(虚拟机为 VirtualBox)获取Android源代码的时候,

使用命令:repo init -u git://android.git.kernel.org/platform/manifest.git 时提示下列错误:
fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)


机器以及软件环境:
公司内网+代理+VirtualBox+Linux


发生问题的原因:
用一句话来概括就是联网出现问题,因为仅仅在网络设定里面设定代理还不够,我们需要用某种fanqiang工具来实现代理的操作。

根据以上原因重新整理出步骤:
1、安装所需软件:
sudo apt-get install git-core curl


2、设置工具repo的存放目录并将其加入环境变量内:
mkdir ~/bin
PATH=~/bin:$PATH

3、下载repo的脚本并将其模式改为可执行:

curl http://android.git.kernel.org/repo > ~/bin/repo

chmod a+x ~/bin/repo


4、创建下载源代码的目录

mkdir ~/source

cd ~/source

5、开始repo操作

repo init -u git://android.git.kernel.org/platform/manifest.git

如果是在正常网路不用代理的情况下一般repo都会成功。

但由于公司特殊的网络环境,导致在repo的时候发生fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)的问题。


这个时候可继续以下的步骤能解决这个问题:

-------------------------------------------------------------------------

1、安装corkscrew

sudo apt-get install corkscrew


2、在任意目录建立任意文件

例如: ~/bin/proxy-hoge-user.sh

添加如下内容并保存:

1 # !/bin/bash
2 CORKSCREW = `which corkscrew`
3 $CORKSCREW proxy . hoge . com 8080 $ 1 $ 2 ~/ bin / user - pwd

其中:

proxy.hoge.com为代理的服务器,

8080为代理的端口,

~/bin/user-pwd为存放代理的用户名和密码的文件。

需要根据自己的情况进行设定。


3、新建存放代理的用户名和密码的文件

~/bin/user-pwd

格式为

<username>:<password>

例如 user:pwd


4、改文件属性

chmod 755 ~/bin/proxy-hoge-user.sh

chmod 600 ~/bin/user-pwd


5、添加环境变量GIT_PROXY_COMMAND

sudo vi ~/.bashrc

添加如下命令:

export GIT_PROXY_COMMAND=~/bin/proxy-hoge-user.sh

保存退出。

source ~/.bashrc

-------------------------------------------------------------------------

这样然后重新再source目录下进行repo操作就能成功了。

<script type="text/javascript"></script>

更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. Nginx系列教程(一)| 手把手教你在Linux环境下搭建Nginx服务
  3. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  4. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  5. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  6. android assert 自定义格式被压缩
  7. eclipse中跳转查看android类的源码
  8. git使用教程二 远程仓库操作
  9. Android(安卓)USB\HDMI等事件监听

随机推荐

  1. ANT学习、keystore制作,APK签名
  2. [Android GMS 认证] CTS 问题列表之 CtsV
  3. Android中的Zip解压缩
  4. android onRestoreInstanceState调用时序
  5. android防止系统截屏
  6. Android 三个按钮对话框
  7. Android 照相机打开方法
  8. Android HttpClient设置User_agent的方式
  9. 如何使用SharedPerferences
  10. Android 获取无线蓝牙MAC信息代码