使用sourceTree关联Gitlab仓库地址

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。安装方法是参考GitLab在GitHub上的Wiki页面。
这里我找到了这个开源项目的地址:Gitlab开源项目
当我们本地开发完了项目,但是突然发现有一天不能正常的从gitlab服务器下拉项目代码和上传项目代码的时候,这是因为Gitlab服务器已经挂了。后端程序员重装Gitlab服务器之后,把首页地址发给你,给你配置好权限之后,你就可以去访问你有权限访问的Git项目了。本地的代码你还有很多没有提交,所以你需要和新装的Gitlab仓库和本地的项目仓库地址进行映射,才能进行提交项目的操作。
当你可以把代码提交到本地仓库的时候,但是无法向远程服务器提交代码,sourceTrree报错如下:

git-c diff.mnemonicPrefix=false-c core.quotePath=false-c凭据.helper=sourcetree获取源站

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@警告:检测到可能的DNS欺骗!@

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

gitlab.fenjiread.com的ecdsa主机密钥已更改,

以及对应IP地址的密钥172.21.16.18

是未知的。这可能意味着

正在进行DNS欺骗或主机的IP地址

其主机密钥同时发生了变化。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@警告:远程主机标识已更改!@

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

有可能有人做了一些下流的事!
有人可能正在偷听你(中间人攻击)!
主机密钥也可能刚刚更改。
远程主机发送的ECDSA密钥的指纹是
sha256:ejseeskjewi2vvclkuovbfy0qofspclwpx3deiq3+7s。
请与系统管理员联系。
在/users/guotianhui/.ssh/known_hosts中添加正确的主机密钥以消除此消息。
冒犯rsa-key-in/users/guotianhui/.ssh/known_hosts:4
gitlab.fenjiread.com的ecdsa主机密钥已更改,您已请求严格检查。
主机密钥验证失败。
致命:无法从远程存储库中读取。
请确保您拥有正确的访问权限
存储库存在。
已完成,但有错误,请参阅上面的

最后sourceTree提示你找不到仓库地址,这个就是gitlab服务重新安装导致仓库地址改变导致的。
我们进入到gitlab项目的页面,把项目地址的路径拷贝出来,但是进入项目发现报如下错:

You won't be able to pull or push project code via SSH until you add an SSH key to your profile

这里提示你填写ssh key,如果你之前已经生成过ssh key,这里就不需要再重新生成了,只需要把你电脑本地上的d_rsa.pub

/Users/guotianhui/.ssh/id_rsa.pub

现在我们已经配置好了ssh key,但是本地的仓库地址和新装的Gitlab服务器的仓库地址应该是不一样的了,之前的项目地址:

url = [email protected]:fenji-read/android-fenji-read.git

现在新建的gitlab项目仓库地址:

url = [email protected]:fenji-read/android-fenji-read.git

发现仓库地址是一样的,但是之前没有开启VPN,现在开启VPN了,所以ssh key应该是变了,所以需要重新生成ssh key。添加之后可以成功提交代码。

cd ~/.ssh
GitLab的生成ssh key 密钥:ssh-keygen -t rsa -C "[email protected]"

Mac电脑查看隐藏文件的快捷键:

Command + Shift + .

现在我们需要把本地代码上传到你在Gitlab创建的项目,创建项目可以的方式可以多种,还可以是直接从Gitlabd导入一个项目,但是需要安装Gitlab的插件。你会发现当你创建完项目之后,Gitlab会告诉你一堆的Git项目提交命令,但是当我们电脑上安装了sourceTree,我们就可以很轻松的利用sourceTree的推送功能,将你本地的项目推送到你新创建的项目目录下。

你可能感兴趣的:(安卓技术分享)