在服务器上搭建git仓库

昨天在git服务器上第一次创建了自己的仓库, 用来做-1任务代码的管理. 特此记录下~

首先, 我已经创建了git账户, 所以这部分就先跳过不讲了. 接下来创建一个用来放置仓库的文件夹,

cd /home/git/repo
sudo mkdir PyMacroParser

然后可以在这个目录下创建新建的项目(此处名字叫PyMacroParser) 地址,

cd PyMacroParser
sudo mkdir -p PyMacroParser.git

接下来把项目进行初始化,

sudo git init --bare PyMacroParser.git

创建完成以后看一下文件夹权限,

ll
total 12
drwxr-xr-x 3 git git 4096 Dec 13 14:21 ./
drwxr-xr-x 4 git git 4096 Dec 13 14:21 ../
drwxr-xr-x 7 git git 4096 Dec 13 14:22 PyMacroParser.git/

可以看到PyMacroParser.git的所属用户已经是git了, 默认是属于root用户的, 如果是酱紫, 需要更改其所属用户,

sudo chown -R git:git PyMacroParser.git/

同样地, 需要更改外面一层文件夹PyMacroParser的所属用户. (虽然不清楚没有改的话会怎样…… 但最好还是保持所属用户一致, 以防出现什么莫名其妙的错误)

在服务器上做完上述操作以后, 就可以使用常规的git clone命令进行对仓库的各种操作了. 然而在git push操作时会提示

'orgin' does not appear to be a git repository

此时则需要在本地重新生成origin即可,

git remote rm origin
git remote add origin git@www.caiqinyi.cn:/home/git/repo/PyMacroParser/PyMacroParser.git

最后再解决Sourcetree提交代码时出现的错误,

fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

在Sourcetree中更改如下设置即可,

新版本的SSH客户端选项默认为PuTTY/Plink, 把它换成OpenSSH就可以了, 它会默认使用git的SSH密钥, 这时候Sourcetree就恢复正常啦~

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注