From a1916f5ee52a7f41cc8fcf42e9244a5c23dad0a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A2=D0=B0=D1=82=D1=8C=D1=8F=D0=BD=D0=B0=20=D0=A4=D0=B0?= =?UTF-8?q?=D1=80=D0=B1=D0=B5=D1=80?= Date: Wed, 21 Oct 2026 14:08:48 +0400 Subject: Initial commit --- README.md | 17 +++++++++++++++++ git-create | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 README.md create mode 100644 git-create diff --git a/README.md b/README.md new file mode 100644 index 0000000..7c78990 --- /dev/null +++ b/README.md @@ -0,0 +1,17 @@ +``` +sudo nano /usr/local/bin/git-create +sudo chmod +x /usr/local/bin/git-create + +``` + + +```cd /var/www/new +git init +git add . +git commit -m "Initial commit" + +git-create private new-api + +git push -u origin --all + +``` diff --git a/git-create b/git-create new file mode 100644 index 0000000..3e95118 --- /dev/null +++ b/git-create @@ -0,0 +1,44 @@ +#!/bin/bash + +# Проверяем аргументы +if [ "$#" -ne 2 ]; then + echo "Использование: git-create [public|private] [имя_репозитория]" + echo "Пример: git-create private my-awesome-app" + exit 1 +fi + +TYPE=$1 +NAME=$2 + +# Проверяем корректность типа +if [ "$TYPE" != "public" ] && [ "$TYPE" != "private" ]; then + echo "Ошибка: Тип должен быть либо 'public', либо 'private'" + exit 1 +fi + +# Конфигурация сервера (замените на ваш IP или имя из .ssh/config) +SERVER="git@АДРЕС_СЕРВЕРА" +REMOTE_PATH="/home/git/repositories/${TYPE}/${NAME}.git" + +echo "====> Создаю пустой ${TYPE} репозиторий на сервере..." + +# Выполняем удаленную команду на сервере от имени пользователя git +ssh ${SERVER} "mkdir -p ${REMOTE_PATH} && git init --bare ${REMOTE_PATH}" + +if [ $? -eq 0 ]; then + echo "====> Репозиторий успешно создан на сервере!" + + # Проверяем, находимся ли мы внутри локального git-репозитория + if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then + echo "====> Найдена локальная папка git. Привязываю remote 'origin'..." + git remote remove origin 2>/dev/null + git remote add origin ${SERVER}:${REMOTE_PATH} + echo "====> Готово! Теперь вы можете сделать: git push -u origin --all" + else + echo "====> Внимание: Текущая папка не является git-репозиторием." + echo "Для привязки выполните локально:" + echo "git remote add origin ${SERVER}:${REMOTE_PATH}" + fi +else + echo "Ошибка при создании репозитория на сервере." +fi -- cgit v1.2.3