linux源码安装git 教程 ,设置远程库,客户端访问完整版

1. linux 在 github 下载 git 安装包 然后解压

wget https://github.com/git/git/archive/v2.21.0.tar.gz
tar -zxvf git.v2.21.0.tar.gz

2. 安装git
删除 默认安装的git

yum remove git

依赖

yum install -y curl-devel expat-devel gettext-devel  openssl-devel zlib-devel autoconf perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
make configure
./configure --prefix=/usr/local/git
make && make install

创建git 快捷方式 方便 任意地方调用

cp /usr/local/git/bin/git  /usr/bin
查看gig 版本
git --version

在这里插入图片描述
安装git远程仓库

打开环境变量配置文件,命令 vim /etc/profile ,在底部加上Git相关配置信息:

PATH=$PATH:/usr/local/git/bin 


export PATH

然后保存,退出

让该配置文件立即生效

source /etc/profile

创建用户组 和账号密码
groupadd shenzichen
useradd git
passwd git

创建 目录为 guanwang 的 仓库
记住 是你创建的当前目录

git init --bare  guanwang

在这里插入图片描述
接下来将test.git的owner改为前面创建的git账户
给用户权限
chown -R git:git guanwang/
拥有者 和组
chown -R git:shenzichen guanwang

源码安装没有快捷方式
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack

客户端

在官网下载git 安装在自己电脑上
在这里插入图片描述
目前仓库是空值 所以 第一次上传项目 是主项目 master

git clone git@39.***.***.155:/home/git/guanwang/
提示 现在仓库是空  正常

libingqiang@39.98.200.155’s password:
warning: You appear to have cloned an empty repository.

在这里插入图片描述
如图 找一个有文件的目录

git init
git add .
git commit -am  "first commit"
git remote add origin git@39.***.***.155:/home/git/guanwang/
git pullgit 
git push -u -f origin master

提交到远程仓库,这个命令中的 -f 是强制推送,因为远程仓库只有初始化的文件,所以强制推送上去就行了,不加-f 会报当前分支没有远程分支 新,强制推送可以覆盖master,这样就完成了第一次提交的步骤

git add . 的时候经常出现

warning: LF will be replaced by CRLF in
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in 等 警告
在这里插入图片描述
在服务器端运行
//将设置中自动转换功能关闭

git config core.autocrlf false

#注意

禁用git用户的shell登录,防止用户通过Git用户登录服务器。编辑/etc/路径下的passwd文件,将文件后边的bash改成git-shell,即

qixiao❌1003:1003::/home/qixiao:/bin/bash
改成

qixiao❌1003:1003::/home/qixiao:/bin/git-shell

将用户qixiao添加到用户组gitgroup

usermod -G shenzichen git

修改git仓库所在目录/home/data/git/的用户组为gitgroup

chgrp -R gitgroup /home/git/guanwang/

写到这里,用户组对/home/data/git/路径只有读的权限,没有写的权限。上边的配置都没有什么问题,就这个权限折腾了一天,用户组默认的权限是没有写权限的,配置好不能上传代码,问题就在用户组的权限。
修改目录及其子文件的权限
chmod -R 654 /home/git/guanwang

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值