dou760663 2017-02-23 03:27 采纳率: 100%
浏览 291
已采纳

Docker Alpine Golang Go进入coding.net私有仓库错误

I created the private repository using the coding.net.
I use docker images alpine and centos.
I can go get git.coding.net/alphayan/orionv2.git successful from docker-centos, but I can't go get git.coding.net/alphayan/test.git from docker-alpine.It returns an error stating:

/go/src # go get -u -v  git.coding.net/alphayan/test.git
# cd .; git ls-remote https://git.coding.net/alphayan/test
fatal: could not read Username for 'https://git.coding.net': terminal prompts disabled
# cd .; git ls-remote git+ssh://git.coding.net/alphayan/test
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
# cd .; git ls-remote ssh://git.coding.net/alphayan/test
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
package git.coding.net/alphayan/test.git: cannot download, git.coding.net/alphayan/test uses insecure protocol

From centos it let me use the username and password:

[root@83fc8067fc95 /]# go get -u -v git.coding.net/alphayan/test.git
Username for 'https://git.coding.net':

finally, I find it caused by the git's version, the centos with git 1.8.3 and the alpine with git 2.11.0.
then I change the centos git's version with 2.11.0, becomes the same wrong with alpine. I think I can modify golang or git source file solve this problem, could someone help me? thinks~!

  • 写回答

2条回答 默认 最新

  • dongping1922 2017-05-26 18:09
    关注

    This error happens because by default go get doesn't use terminal input. This behaviour can be changed by modifying environment variable GIT_TERMINAL_PROMPT, which was introduced in git 2.3. That's why the go get command behaves differently in CentOS 7 (git 1.8) and Alpine 3.5 (git 2.11).

    You can work your way around the issue in git >= 2.3 by running go get as follows:

    $ GIT_TERMINAL_PROMPT=1 go get github.com/foo/bar
    Username for 'https://github.com':
    

    If you have multiple go get calls then you can export that environment variable before running the commands:

    $ export GIT_TERMINAL_PROMPT=1
    $ go get github.com/foo/bar
    Username for 'https://github.com':
    $ go get github.com/foo/baz
    Username for 'https://github.com':
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能