1. 每次Pull/Push代码都需要输入账号密码的问题
由于本地全局Git账号配置的是GitHub账号,在使用公司Git仓库的时候,初次添加账号密码后,每次Pull/Push代码都需要输入账号密码。
解决办法
在.git目录中有个config文件,在仓库地址中配置下用户名和密码即可,添加的格式如下:
例如:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = http://userName:password@host/z/source/ios-app.git
fetch = +refs/heads/*:refs/remotes/origin/*
pushurl = http://userName:password@host/z/source/ios-app.git
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "dev"]
remote = origin
merge = refs/heads/dev
如果需要
打开终端并且输入:
git config --global credential.helper osxkeychain #第一次需要输入密码,
2. 拉取(Pull)代码时报错 unable to update local ref
cd 进入项目跟目录下,依次执行以下指令
git gc --prune=now
git remote prune origin
完成后,即可正常拉取代码了。
3. 拉取代码时,用户名或密码输入错误
在使用URL克隆仓库时,如果用户不是SourceTree的全局配置账户,在填入仓库地址时,会弹出输入用户名、密码的页面:
输入用户名密码如果一不小心,输入错误,再次尝试克隆,不会重新弹框,而且会因权限问题克隆失败,这时需要删除对应的主机及用户才行;
解决:
打开SourceTree -> 偏好设置... -> 选择“高级”,即可看到所有你已使用的主机名称及用户名:
找到对应的主机及用户名,点击“移除”即可;
然后重新克隆的时候,就会弹出用户名密码的输入框。
网友评论