创建局域网git裸仓库

创建局域网git裸仓库

不说废话,直接上脚本

bash 复制代码
#!/bin/bash

# 获取脚本所在的目录
script_path="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

if [ $# -eq 0 ]; then
  echo "请提供仓库的名称作为参数。"
  exit 1
fi

repo_name=$1
repo_path="$script_path/$repo_name.git"
ip_address=$(ip addr show | grep 'inet ' | grep -v '127.0.0.1' | grep -v 'inet6' | awk '{print $2}' | cut -d'/' -f1 | head -n 1)
url="ssh://root@$ip_address$script_path/$repo_name.git"


# 检查是否已经存在同名目录或文件
if [ -e $repo_path ]; then
  echo "目录或文件 '$repo_name' 已经存在。请使用其他名称。"
  exit 1
fi

# 切换到脚本所在目录
cd $script_path



# 创建裸仓库
git init --bare $repo_path


echo "------------------------------------------------------------------------"
echo ""
echo "裸仓库 '$url' 创建成功。"
echo ""
echo "------------------------------------------------------------------------"

cat << EOF

# 使用教程:

## Git 全局设置:

git config --global user.name "DerekLiu"
git config --global user.email "yjkhtddx@sina.com"

## 创建 git 仓库:

mkdir $repo_name
cd $repo_name
git init 
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin $url
git push -u origin "master"

## 已有仓库?

cd existing_git_repo
git remote add origin $url
git push -u origin "master"

EOF
echo "------------------------------------------------------------------------"
相关推荐
moringlightyn21 小时前
进度条+ 基础开发工具----版本控制器git 调试器gdb/cgdb
笔记·git·其他·c·调试器·gdb/cgdb·进度条 倒计时
自由日记21 小时前
入门git:部署到公网
git
QT 小鲜肉1 天前
【Git、GitHub、Gitee】按功能分类汇总Git常用命令详解(超详细)
c语言·网络·c++·git·qt·gitee·github
wukan8881 天前
【SMTP】在线配置测试工具,如何配置接口?
git·网络协议·编辑器
winner88811 天前
Git 开发全流程规范:分支创建+关联远程+rebase同步+分支清理实战
git·rebase·git rebase·git branch -d
百锦再1 天前
第10章 错误处理
java·git·ai·rust·go·错误·pathon
静心观复2 天前
git revert 2
git
枫子有风2 天前
Git 简介和基础使用
git
FrankYoou2 天前
git stash push 命令作用及使用场景
git
眼小博2 天前
多人协作Git开发流程指南
git