Рубрики
Uncategorized

Автоматизируя толчок только с одной командой Bash

Автоматизация Git Push с просто одной командой Bash

Автор оригинала: Saurav Jaiswal.

Скажем, вы работаете над проектом или изучаете что-то или делаете вызов, как # 100Дасофкод, и вы только лично, кто совершает файлы в репозиторий GitHub. Разве это не было бы здорово, если бы мы могли сделать весь процесс Git автоматизироваться вместо того, чтобы ввести каждый раз, когда Git Comparts нажимает файл на репозиторий GitHub.

Мы можем сделать простой взлом для автоматизации всего процесса с помощью одной командой Bash. Да! Вы слышали это правильно. Одно команда Bash может проталкивать весь репозиторий от вас локальной машины в Github.

Так Давайте начнем с написания простого скрипта Bash и сохранить его в домашнем каталоге с Git-push.sh

echo "Enter your message"
read message
git add .
git commit -m"${message}"
if [ -n "$(git status - porcelain)" ];
then
 echo "IT IS CLEAN"
else
 git status
 echo "Pushing data to remote server!!!"
 git push -u origin master
fi

По сути, это принимает весь файл из вашей папки и нажимает его в Github. Если условие проверяет его, файлы уже толкают или нет. Если бы он был уже толкнул, то он просто вернется, он будет толкать файлы в репозиторий GitHub.

Теперь мы сделаем этот файл исполняемым файлом, изменив разрешение с помощью команды chmod.

chmod +x git-push.sh
or
chmod 755 git-push.sh

Как только сценарий исполняется исполняемым, нам нужно будет скопировать его в каталог, который в нашей системе ожидается содержать исполняемые скрипты и код. На большинстве систем у нас будет выбор между двумя каталогами. Если мы единственным пользователем нашей системы, вы можете скопировать наш скрипт на/usr/bin или/usr/local/bin. Если вы поделитесь своей системой с другими людьми, лучше скопировать свой скрипт на/usr/local/bin. Скорее всего, вам понадобится привилегии суперпользователей, чтобы скопировать наш сценарий в любой из этих каталогов, поэтому, скорее всего, нам нужно использовать команду sudo. sudo cp git-push.sh/usr/bin/git-push.sh sudo cp git-push.sh/usr/local/bin Это сделает наш сценарий доступен на глобальном масштабе, чтобы мы могли использовать его из любого места, и в любое время мы хотим.

Более того, если вы хотите сделать нажатие запланированного в течение определенного времени, вы можете использовать планировщик заданий Crontab для этого.

Оригинал: «https://www.codementor.io/@sauravjaiswal999/automating-git-push-with-just-a-single-bash-command-18aclt4mll»