linux搭建git仓库

git安装与配置

bash 复制代码
# git安装
yum install -y git

# git配置(以下为root用户下配置)
# 添加git组
groupadd git

# 添加账号、密码(账号zdtest可根据自己需求修改)
useradd zdtest -g git
passwd zdtest

创建远程仓库(linux端)

  • 创建个人文件夹
bash 复制代码
mkdir -p /home/data/zdtest

cd /home/data/zdtest
  • 创建远程仓库文件夹
bash 复制代码
mkdir -p zdtest.git
  • 初始化远程仓库
bash 复制代码
git init --bare zdtest.git
  • 仓库配置
bash 复制代码
chown -R zdtest:git zdtest.git/

远程仓库访问(windows端)

  • 使用git bash进行仓库连接
bash 复制代码
# 格式:用户名@linux端ip:git路径
# 用户名使用步骤一中创建的用户
git clone zdtest@192.168.1.10:/home/data/zdtest/zdtest.git
  • 本地文件上传(push)

    • 方式1:使用TortoiseGit界面版软件上传(暂不介绍);
    • 方式2:命令行方式上传;
    bash 复制代码
    # 初始化仓库
    git init
    
    # 连接远程仓库
    git remote add origin zdtest@192.168.1.10:/home/data/zdtest/zdtest.git
    
    # 将文件提交至缓存区
    git add .
    
    # 提交commit信息
    git commit -m 'upload files'
    
    # 代码推送
    git push origin master

公钥配置

windows端

  • 更新配置信息(在git bash内操作)
bash 复制代码
# 配置用户名(用户名自行定义)
git config --global user.name 'zdtest'

# 配置邮箱(邮箱自行定义)
git config --global user.email 'zdtest@xx.com'

# 信息查看
git config --list
  • 删除旧的ssh信息(删除路径C:\Users\guanzedong\.ssh文件夹内所有文件)
  • 生成新的私钥(id_rsa)和公钥(id_rsa.pub)
bash 复制代码
# zdtest@xx.com为git config时配置的邮箱
ssh-keygen -t rsa -C "zdtest@xx.com"

# 配置过程中一直回车即可
  • 拷贝id_rsa.pub中的内容

linux端

  • 修改sshd配置
bash 复制代码
vim /etc/ssh/sshd_config

# 编辑如下:
RSAAuthentication yes # 有些版本没有该配置
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
  • 重启sshd
  • 创建公钥文件
bash 复制代码
# 进入用户目录
cd /home/zdtest

# 创建.ssh文件夹和authorized_keys文件
mkdir .ssh
chmod 755 .ssh
cd .ssh
touch authorized_keys
chmod 755 authorized_keys
  • 将windows中id_rsa.pub内容拷贝至authorized_keys文件
  • 权限修改
bash 复制代码
chown zdtest:git .ssh
chown zdtest:git .ssh/authorized_keys
相关推荐
orion5715 小时前
Missing Semester Class1:course overview and introduction of shell
linux
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房2 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
A_Lonely_Cat2 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
tntxia3 天前
linux curl命令详解_curl详解
linux
扛枪的书生3 天前
Linux 网络管理器用法速查
linux
顺风尿一寸3 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode3 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行