向我一样的linux小白也可以轻松在ubuntu上搭建git仓库

2,178 阅读3分钟

引子

趁着百度云便宜250买了两年的服务器,正好搭个个人的git仓库,省的俩电脑之间来回插u盘了。其实很简单,但是不太熟练的我,还是鼓捣了一阵子,顺便写下来记一下过程,省的以后自己忘了。因为已经搭建完了,过程截图就没有了...

尽可能的写详细些,因为肯定会碰到跟我一样的Linux小白,在买服务器之前我还没用过Linux,第一次进去的那一刻,我靠,这是啥...全是命令行,无从下手哈哈。所以先装了图形界面。

一台ubuntu服务器作为git仓库 版本是ubuntu 16,另有俩win10电脑上传。

安装git

sudo apt-get install git

创建一个新用户,管理git服务

sudo adduser git

这里创建的新用户就叫git

安装OpenSSH

sudo apt-get install openssh-server

配置SSH无密码登陆

修改/etc/hosts文件: 在后面添加自己要上传代码的电脑的ip

在客户端上生成密钥

分别在我的两台windows电脑上安装git,然后执行ssh-keygen –t rsa

然后在 C:\Users\你当前用户\.ssh 中,找到 id_rsa 和 id_rsa.pub 文件;id_rsa.pub是公钥,我们需要把这个文件拷贝到服务器里去

使用Xftp将文件拷贝到服务器上,随便哪里无所谓,假设我们就拷贝到 /home/git 中

Xftp的使用方法:协议选SFTP,端口号不用改

将客户端的密钥添加在服务器中

  1. 在/home/git/.ssh目录中找到 authorized_kesys 文件,没有这个文件就自己创建,没找到.ssh目录同样创建一个.ssh

  2. 然后将 id_rsa.pub 里的内容添加到 authorized_kesys 文件中;可以直接复制粘贴,也可以用命令:cat /home/git/id_rsa.pub>>/home/git/.ssh/authorized_keys;多个密钥就挨个儿往下添加,不要覆盖

  3. 如果你向我一样,有一台以上的电脑,公钥文件名字一样,要么在创建的时候换名字,要么用完一个删一个,因为我们需要把公钥写进 authorized_keys 文件里面

创建git仓库

  1. 建一个git仓库的存储目录,命令 mkdir /home/GitServer/wx/,地址随意
  2. 初始化仓库, git init –-bare /home/GitServer/wx/demo.git
  3. 修改权限, chown -R git:git /home/GitServer/wx/demo.git 。这一步不做的话,后面我们不能push
  4. 服务器上我们的工作就做完了
  5. 在客户端上克隆一下项目看看,git clone git@baiduyun:/home/GitServer/wx/demo.git,这里我写的baiduyun是在我自己的电脑的hosts文件中添加的,省去了记不住ip的问题。hosts文件所在目录: C:\Windows\System32\drivers\etc

客户端上传代码

创建一个git项目

在已有的项目目录中执行 git init

添加把项目所有文件

git add .

git commit -m "自己写描述"

关联远程仓库

git remote add origin git@baiduyun:/home/GitServer/wx/demo.git

把本地库的所有内容推送到远程库上

git push -u origin master

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

搞定~

成功以后在另一台电脑上克隆一下代码试试能不能把刚才第一台电脑上的项目拿下来

git clone git@baiduyun:/home/GitServer/wx/demo.git

参考文章