Linux 上搭建 git 私有仓库(二)

简介: 今天开始将如何在服务器上开启一个常态化的 git 私有仓库服务,通过 git 协议进行项目的协作开发。

前言


昨天已经完成了再 Linux 上搭建最新版的 git。单单只有个 git,创建了项目也不能和其他伙伴协作,今天开始将如何在服务器上开启一个常态化的 git 私有仓库服务,通过 git 协议进行项目的协作开发。


正文



1. 复习 git 安装


1)将最新版 git 源码从昨天测试的服务器拷贝过来。


进入 git 源码所在目录


cd /usr/local/

执行远程拷贝命令


scp -r git-2.33.1.tar.gz root@123.207.90.227:/usr/local/

11.webp.jpg


2)这里我们吸取昨天教训,在执行编译命令之前把缺失的依赖提前安装上,再对照昨天的教程安装最新版 git。


yum install curl-devel expat-devel -y


很好这次中途没有报错,直接装完了。


111.webp.jpg


2.初始化私有仓库


服务器切换到 git 用户,没有 git 用户可以执行下面的命令创建一个


useradd git
passwd git


进入 git 用户的家目录


cd /home/git


执行初始化命令(-- bare 表示)


git init --bare --shared


--bare 参数表示创建一个空仓库

--shared 表示共享这个仓库


1111.webp.jpg


3.初始化一个测试项目


创建测试项目


mkdir project_test && cd project_test && git init
cd ~ && git clone --bare --shared project_test project_test.git

00.webp.jpg

结果校对


4.开启 git daemon 守护进程


在云服务器测试需要提前开启端口,不会的找下云服务商的文档


000.webp.jpg

腾讯云开启 9418 端口


启动


git daemon --reuseaddr --base-path=/home/git --export-all --verbose --enable=receive-pack

00000.webp.jpg

启动完成


windows上验证是否成功


克隆私有仓库里的项目,下载完成之后,在项目里新增一个 1.txt 用于验证。


223.webp.jpg


git status:查看本地仓库文件的暂存状态

git add:新增文件到本地 git 仓库

git commit:提交更新

git push:推送到远程仓库


224.webp.jpg

推送到私有仓库成功


可以看到推送也显示成功了。现在在 windows 上新开一个窗口,执行 git clone 命令拉去最新的项目,看看有没有 1.txt。


221.webp.jpg

验证通过


可以看到新开的窗口里也包含刚刚推送的文件,OK。


5.巨坑记录


在 push 数据时,我出现了如下错误(现象就是卡主,不动),


Counting objects: 8, done.
Compressing objects: 100% (3/3) done,
Writing objects: 100% (6/6)


根据网上教程,我在服务端执行了下下述命令,


git config --global sendpack.sideband false


结果并没有什么用!!!(好久搞不定,都快怀疑人生了)


这里注意了,遇到这个问题时,一定是要在客户端执行,比如我的 git 客户端在 windows 电脑上,那就应该在 windows 电脑上执行!!!


目录
相关文章
|
3月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何将个人账号下的Git仓库转移到企业账号下
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
IDE 网络安全 开发工具
【Azure App Service】Local Git App Service的仓库代码遇见卡住不Clone代码的问题
【Azure App Service】Local Git App Service的仓库代码遇见卡住不Clone代码的问题
【Azure App Service】Local Git App Service的仓库代码遇见卡住不Clone代码的问题
|
8天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
22 2
|
1月前
|
Shell 开发工具 git
git学习三:git使用:删除仓库,删除仓库内文件
通过GitHub的设置页面删除仓库,以及如何使用Git命令行删除仓库中的文件或文件夹。
141 1
git学习三:git使用:删除仓库,删除仓库内文件
|
1月前
|
开发工具 git 索引
git上面中新建gitignore文件,并且去除已经在仓库版本管理中的文件夹
git上面中新建gitignore文件,并且去除已经在仓库版本管理中的文件夹
62 4
|
1月前
|
存储 开发工具 git
Git 远程仓库地址管理:添加、修改和验证
Git 远程仓库地址管理:添加、修改和验证
56 4
|
1月前
|
编译器 开发工具 数据安全/隐私保护
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
本文提供了一个关于如何在Gitee上进行多人协作和版本控制的详细教程,包括新建和初始化仓库、克隆仓库、邀请好友共同管理仓库以及注意事项,旨在帮助用户顺利进行代码协作开发。
178 0
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
|
2月前
|
开发工具 git
IDEA更改远程git仓库地址
【9月更文挑战第27天】本文介绍了两种在IntelliJ IDEA中更改远程Git仓库地址的方法:一是通过图形界面,在VCS设置中直接修改;二是通过IDEA内置的命令行工具使用`git`命令进行更改。具体步骤包括从版本控制菜单进入项目设置、修改远程仓库URL,以及使用`git remote set-url`命令更新仓库地址,并验证修改结果。这些方法适用于项目迁移或更换仓库地址的情况。
538 6
|
2月前
|
Linux 开发工具 git
linux自建仓库git之钩子不生效
linux自建仓库git之钩子不生效
|
1月前
|
网络协议 网络安全 开发工具
【Git快速入门】Git代码管理手册与协同开发之远程仓库(四)
【Git快速入门】Git代码管理手册与协同开发之远程仓库(四)