github提示-Key is already in use

ERROR: Permission to xxxxxxx.git denied to deploy key
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

自己的ssh-key已在某个库中使用了, 如果你是想在自己当前的账号下的多个库用同一个key的话那么就把自己的key放到账号中.

github网站 — 点击右上角头像 — settings — SSH and GPG keys — New SSH key

v2ex-BB

同一个git库, 是否可以多个用户操作?

线上项目git库会需要多个用户操作一个库, 部署人员、开发者 分别有自己的账号 部署人员主要是切换tag, 开发者可能需要在线上做调试会需要切换branch和tag还有pull等操作. 但会报错误.

用户有两个-user1 user2

先使用user1 git clone 这个时候用这个用户git fetch pull chekcout 操作都是正常的.

然后切换到用户 su user2 做下面操作就会报错.


$ git checkout v1.0.0

fatal: Unable to create ‘/home/test/sample/.git/index.lock’: ????


$ git pull

error: 无法打开 .git/FETCH_HEAD:????

私有git-http克隆方式

SP(server-path) 服务器路径: /home/www
G(git) git文件夹: git1.git

服务器中用Nginx配置好目录指向SP中.


初始git库在SP中, sudo git init --bare git1.git

在G文件夹中,

mv hooks/post-update.sample hooks/post-update
chmod a+x hooks/post-update
git update-server-info

克隆: git clone http://(ip或域名)/git1.git

待解决

目前这种方式只是支持只读(克隆), 但是不支持push(提交).

相关资料

搭建Composer私有仓库
服务器上的 Git

github-fork项目后获取更新

图形方式同步

在github项目页面中下面有一个 点击后跟着提示走.

命令方式同步

运行 git remote add upstream https://github.com/staticblog/staticblog.github.io.git

这条命令就算添加一个别名为 upstream(上游)的地址,指向之前 fork 的原仓库地址。git remote -v 输出如下:

origin git@github.com:ibrother/staticblog.github.io.git (fetch)
origin git@github.com:ibrother/staticblog.github.io.git (push)
upstream https://github.com/staticblog/staticblog.github.io.git (fetch)
upstream https://github.com/staticblog/staticblog.github.io.git (push)
之后运行下面几条命令,就可以保持本地仓库和上游仓库同步了

git fetch upstream
git checkout master
git merge upstream/master

相关资料

github上fork了别人的项目后,再同步更新别人的提交
命令方式同步仓库

github-tag包下载很慢处理方法

eg: https://github.com/mysql/mysql-server/tags 下载MySQL的源码包

方法一: 通过搜索最近的DNS服务器

下载会转到 github-cloud.s3.amazonaws.com 这服务器下载, 站长之家-DNS查询 离我们最近的服务器, 然后把IP粘贴到本机的HOSTS文件中.

52.216.20.16 github-cloud.s3.amazonaws.com

方法二: 把github导出然到国内的git平台中下载.

eg: 利用码云的git平台, 导入后再tag中下载包

相关资料

mysql-社区版下载