Git、Gitee、Github、Gitlab区别与 Git搭建

Git:本地软件,无需联网即可使用,实现本地代码的管理。
        分布式版本控制系统,是一种工具,用于代码的存储和版本控制。
        将本地文件通过一定的操作将其同步上传到Github或Gitee

Gitee:是一家中国公司,GitHub相当于云服务器,这个云服务器是国外的,为了方便国内用户需求,Github被中国化了,变成了Gitee(码云); 全中文,大部分用户都是国人,优秀的库相对少。
               不用自己搭建环境可以建立自己的私有仓库

Github:是一家美国公司,基于Git实现的在线代码仓库,目前全球最大的代码托管平台
               面向开源及私有软件项目的托管平台,只支持 git 作为唯一的版本库格式进行托管。
               对于开源项目而言,GitHub 依然是代码托管的首选。全英文并且用户基数多。
               共有仓库免费,建立私有仓库要收费  Github的初衷就是为了大家共享自己的劳动成果。

 
 Gitlab:基于Git实现的在线代码仓库软件,可以用GitLab自己搭建一个类似于GitHub一样的仓库,但是GitLab有完善的管理界面和权限控制,一般用于在企业、学校等内部网络搭建Git私服。    从代码的私有性上来看,GitLab 是一个更好的选择。
               要自己搭环境。可以免费搭建私有仓库,并且可以部署在自己的服务器上        

 



一、搭建个人版 Git 服务器—
      需求:
将自己的服务器搭建成一个Git服务器,用来在本地和服务器上进行代码同步。

     1、服务器端

一、安装Git
#查看本机是否安装了git,以及安装了几个
which -a git  

# 在安装Git前可以先检查一下服务器上是否已经安装了Git,若没有则需要手动进行安装。
yum –y install git

# 验证是否安装成功
git --version

二、创建Git用户
# 创建git账户
sudo useradd git

# 设置git账户密码,需要连续输入两次密码
passwd git

# 查看git账户是否创建成功
cd /home
ls -all

三、配置免密登录
#进入Git用户所在的目录并切换到Git用户
cd /home/git  | su git

#在git用户根目录下创建.ssh目录
mkdir .ssh

#进入.ssh目录,创建用来保存用户ssh登录的公钥的文件authorized_keys
cd .ssh | touch authorized_keys

#.ssh目录的权限必须是700,而authorized_keys的权限必须是600,为确保权限正确使用下列命令进行设置
sudo chmod -R 700 /home/git/.ssh
sudo chmod 600 /home/git/.ssh/authorized_keys

#将服务器本地和个人PC端创建的公钥复制进authorized_keys,然后保存退出。
  #服务端没有公玥同样在root用户下操作生成 ,上面的操作是在git用户下的,需要先切换出来。创建完成后切换回去。
su - | ssh-keygen -t dsa 
ls ~/.ssh
cp -r ~/.ssh/id_rsa.pub  /home/git/.ssh/authorized_keys

  #若客户端没有公玥,则在客户端操作生成,创建时回车即可,创建完成后查看。服务端没有公玥同样操作生成
  ssh-keygen -t dsa  |  ls ~/.ssh  
  scp -r ~/.ssh/id_rsa.pub root@服务器地址:/home/git/.ssh/authorized_keys(Wincp工具传输也可)

四、Git仓库
#在/home/git/目录下可以创建自己的Git仓库
    git init --bare 仓库名.git
  # git init --bare demo.git
  #创建成功的提示:Initialized empty Git repository in /home/git/demo.git/

如下图所示,表示 git 安装成功
 
2、客户端

#将仓库克隆下来
git clone git@xx.xx.xx:/home/git/demo.git
    # xx.xx.xx 表示服务器IP

#操作仓库,创建一个名为test.txt的文本文件,然后用git命令将其推到远程私有Git服务器上:
git add .
git commot -m "create test.txt"
git push

如下图所示,表示客户端推送成功  


3、服务端验证

验证
#在服务端本地,先创建一个目录,然后在该目录下同样使用git命令将该仓库克隆一份
mkdie  /home/gitpush
git clone git@localhost:/home/git/demo.git

如下图表示,在本地创建的test.txt已经同步到了服务器端


结论:
Git服务器最常用的还是在多人之间进行代码的同步。
其实还有一种更简便的操作:将自己本地和服务器的ssh公钥添加到Github上,直接利用Github来进行同步,这样操作会更简单,唯一的缺陷是速度可能会比较慢。
     
 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值