我在Codaset上有一个私人的Git仓库。通常情况下,当我尝试在我的Windows机器上通过HTTPS克隆它时,它会要求我输入用户名和密码。当我尝试在Ubuntu服务器上克隆时,它从未要求我输入用户名或密码,并且失败并显示401错误。我需要做什么不同的操作?
这是我正在做的:
git clone https://codaset.com/username/project_name.git destination_folder_name.git
我使用以下格式使其正常工作:
https://username:password@codaset.com/username/project_name.git 目标文件夹
但是,根据这两篇文章,使用该方法可能存在安全问题:
_netrc
的文件,其内容如下:machine codaset.com login your_codaset_login password your_codaset_password
注意:在Windows上为%HOME%\_netrc
,在Unix上为$HOME/.netrc
这样,当您克隆代码库时,您不用再输入密码,而是可以直接键入:
git clone https://username@codaset.com/username/project_name.git destination_folder_name.git
您可以删除初始用户名:
git clone https://codaset.com/username/project_name.git destination_folder_name.git
如果您不想在.netrc
文件中以明文形式输入您的凭据(特别是密码),您可以使用gpg
加密该netrc
文件:请参见"是否有一种方法在使用https://github时跳过密码输入",这样您就不必输入密码了。
你可以这样做:
git clone https://username@codaset.com/username/project_name.git destination_folder_name.git
使其提示输入密码。
我曾经有同样的问题,但是我的问题是因为git版本过旧,只有1.7.1。更新git解决了这个问题。以下是具体步骤:https://travis.media/how-to-upgrade-git-on-rhel7-and-centos7/
.netrc
文件:https://dev59.com/om435IYBdhLWcg3wkA5e#18362082 - VonC