首页 > 系统相关 >利用shell脚本完成git自动拉取、同步

利用shell脚本完成git自动拉取、同步

时间:2022-09-01 17:37:10浏览次数:65  
标签:origin HEAD git 拉取 CURRENT shell USER PATH

#!/bin/bash
#paras: $1 dir

#config section
USER=Shawn
REMOTE_PATH="~/path/${USER}/${1}"
######################

function current_branch() {
    git rev-parse --abbrev-ref HEAD | grep -v HEAD || \
    git describe --tags HEAD || \
    git rev-parse HEAD
}

cd $1
CURRENT_BRANCH=$(current_branch)
LOCAL_PATH=$(pwd)
git fetch origin
#git pull origin development
ssh root@${IP_ADDR_DST} " \
mkdir -p ${REMOTE_PATH}; \
cd ${REMOTE_PATH}; \
git init; \
git remote add origin ${USER}@${IP_ADDR_SRC}:${LOCAL_PATH}; \
git remote set-url --add origin ${USER}@${IP_ADDR}:${LOCAL_PATH}; \
git fetch origin; \
git checkout -b ${CURRENT_BRANCH} origin/${CURRENT_BRANCH}; \
git pull origin${CURRENT_BRANCH}; \

  

标签:origin,HEAD,git,拉取,CURRENT,shell,USER,PATH
From: https://www.cnblogs.com/tju1895/p/16647239.html

相关文章

  • Git的基础使用与远程仓库连接
    创建一个git区(本地版本库),在项目文件夹中右键菜单,点击GitBashhere,打开Git命令框使用gitinit往里面添加文件使用gitadd文件名添加使用gitstatus查看是否添加......
  • git查看历史和根据历史里面的id切换
    查看历史gitlog--pretty=onelinegitlog(然后一直按enter键)一个是切换根据历史里面的id切换gitcheckoutID gitlog需要不断按enter键出来历史提交记录  g......
  • git-从master拉取新分支并push到远端
    从master拉取新分支并push到远端 开发过程中经常用到从master分支copy一个开发分支: 1.切换到被copy的分支(master),并且从远端拉取最新版本 $gitcheckoutmaster ......
  • Git规范管理
    一、背景​统一规范后,对于后面的一系列的开发过程由系统完成,从而提高研发效率,避免各种意外情况。 二、分支管理master分支对应线上,系统上线时。平时进行需求......
  • 微信开发者工具拉取gitlab远程代码报Pull failed原因分析:
    可能出现的原因:本地主机上没有安装nodenode下载地址:1https://nodejs.org/zh-cn/download/ 没有保存gitlab的用户名和密码  ......
  • PowerShell教程 - 汇总
    更新记录转载请注明出处:2022年9月1日发布。2022年8月15日从笔记迁移到博客。章节链接PowerShell介绍(IntroductiontoPowerShell)https://www.cnblogs.c......
  • 安装git
    1.1去官网下载配置环境变量Test1.3配置gitconfig1.4配置idea1.5安装插件这里我已经安装过了......
  • 15.shell编程
    Linux的shell编程可以理解为Windows里面的powershell和cmd新建文件与执行在root文件夹新建shell文件后写入命令cd/rootvitest.sh#shell文件后缀为.sh添加执......
  • 学习如何将代码从 VSCode 推送到 GitHub
    学习如何将代码从VSCode推送到GitHub您是一名开发人员,大部分时间都在通过在不同窗口之间切换来编辑代码、查看更改以及将代码从VSCode推送到GitHub来消耗大部分时......
  • GitHub——自动发布NPM包
    前言原理很简单,就是利用github的actions去触发上传到npm平台;内容?>主要分为两个步骤:1.在NPM平台生成token2.github配置secrets/actionsNPM生成token登录npm平......