단일 bash 명령어로 git push 자동화

1715 단어 gitbashdevopslinux
당신이 프로젝트에서 작업하거나 무언가를 배우거나 #100daysofcode와 같은 도전을 하고 있고 github 저장소에 파일을 커밋하는 유일한 사람이라고 가정해 봅시다. github 리포지토리에 파일을 푸시하기 위해 동일한 git 명령을 매번 입력하는 대신 전체 git 프로세스를 자동화할 수 있다면 좋지 않을까요?

하나의 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
또는
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 작업 스케줄러를 사용하면 됩니다.

좋은 웹페이지 즐겨찾기