git自动提交脚本
每次在linux都要重新一遍一遍敲着这些重复的代码,我想着能够优化一下,做个一键脚本,减少重复劳动。
#!/bin/bash
git status read -r -p "是否继续提交? [Y/n] " input case $input in
[yY][eE][sS]|[yY])
echo "继续提交"
git add -A
git commit -m $1
git push origin $2
exit 1
;; [nN][oO]|[nN])
echo "中断提交"
exit 1
;; *)
echo "输入错误,请重新输入"
;;
esac
实际操作的时候命令行输入:./gitcommit.sh commitMessage branchName就可以了
循环提交脚本
#!/bin/bash
git status while true;
do
read -r -p "是否继续提交? [Y/n] " input case $input in
[yY][eE][sS]|[yY])
echo "继续提交"
git add -A
git commit -m $1
git push origin $2
exit 1
;; [nN][oO]|[nN])
echo "中断提交"
exit 1
;; *)
echo "输入错误,请重新输入"
;;
esac
done
操作跟单次提交一样
有时候,我们本地开发提交代码用svn,提交到代码仓库,然后代码仓库推送到目标服务器
#!/bin/bash
cd 代码路径
svn up
version=`svnversion |sed 's/^.*://' |sed 's/[A-Z]*$//'`
#version=`svn info|grep "Last Changed Rev"`
branch=仓库地址 git status read -r -p "是否继续提交? [Y/n] " input case $input in
[yY][eE][sS]|[yY])
echo "继续提交"
git add .
git commit -m $version
git push $branch master
;; [nN][oO]|[nN])
echo "中断提交"
exit 1
;; *)
echo "输入错误"
exit 1
;;
esac
执行的时候直接./gitbash.sh 就好了,因为提交信息跟仓库地址我是直接写死的,
顺便总结一下git add的几个区别
git add -A 保存所有的修改
git add . 保存新的添加和修改,但是不包括删除
git add -u 保存修改和删除,但是不包括新建文件
svn的查询某一版本号的修改内容
查看history
svn log -l count /file/path #查看某一文件的最近count次提交信息
比较不同版本
svn diff -r PREV:COMMITTED /file/path #查看最近一次提交的改动
svn diff -r version1:version2 /file/path #查看指定版本间的不同
svn info跟svnversion这两个命令的区别
svn info|grep "Last Changed Rev" #得到当前路径文件提交的最后一次版本号
svnversion |sed 's/^.*://' |sed 's/[A-Z]*$//' #得到当前仓库地址的最新版本号
git自动提交脚本的更多相关文章
- hadoop自动提交脚本
自动提交到hadoop系统,然后调用wordcount的任务,并下载输出的文件. #!/bin/sh #从给定的路径获取文件列表,提交到hadoop系统,使用wordcount的功能统计单词数量 #e ...
- 【颓废篇】Py:从零开始的poj自动提交
之前学习了一些python的爬虫技术... 已经可以通过python来水blog的阅读量了 你知道的太多了, 然而你看我这个blog惨不忍睹的访问量, 有人吗? 有人吗? 今天突然又双叒叕心血来潮想写 ...
- 自动提交Git branch代码评审到Review Board系统
背景 敏捷软件开发中,越小的反馈环,意味着软件质量越容易得到保证. 作为组件团队,我们的开发任务中,往往存在一些特性涉及到几十个功能点,开发周期持续数周或数月的情况.如何在开发过程中保证软件质量,是个 ...
- 做了一个简易的git 代码自动部署脚本
做了一个简易的git 代码自动部署脚本 http://my.oschina.net/caomenglong/blog/472665 发表于2个月前(2015-06-30 21:08) 阅读(200 ...
- .NET Core下操作Git,自动提交代码到 GitHub
.NET Core 3.0 预览版发布已经好些时日了,博客园也已将其用于生产环境中,可见 .NET Core 日趋成熟 回归正题,你想盖大楼吗?想 GitHub 首页一片绿吗?今天拿她玩玩自动化提交代 ...
- # .NET Core下操作Git,自动提交代码到
.NET Core下操作Git,自动提交代码到 转自博客园(阿星Plus) .NET Core 3.0 预览版发布已经好些时日了,博客园也已将其用于生产环境中,可见 .NET Core 日趋成熟 回归 ...
- 使用RBTool自动提交code review请求
使用RBTool自动提交code review请求 前言 让我们回想一下手工提交review请求的过程: 首先得用 svn diff > filename.diff 生成diff文件. 然后输入 ...
- git学习------>如何修改git已提交的记录中的Author和Email?
一.背景 最近搭建好GitLab后,准备陆陆续续的将之前在SVN仓库中保存的代码迁移到GitLab上,昨天顺利将三个Android组件的代码迁移到GitLab后,其他同事发现迁移是成功了,但是pull ...
- Git自动部署
Git自动部署文件位于repository下面的hooks里的post-receive #!/bin/sh set -e git-update-server-info gitosis-run-hook ...
随机推荐
- LinuxShell——变量
LinuxShell——变量 摘要:本文主要学习了Shell命令中的变量. 什么是变量 简单的说,变量就是让某一个特定字串代表不固定的内容. 变量是计算机内存的单元,其中存放的值可以改变.当Shell ...
- AES加解密异常java.security.InvalidKeyException: Illegal key size
AES加解密异常 Java后台AES解密,抛出异常如下:java.security.InvalidKeyException: Illegal key size Illegal key size or ...
- vue定时器+弹框 跳到登陆页面
1.做一个请求拦截,并弹框提示几秒后,跳转到登陆首页或是点击确定之后直接跳转拦截用了this.$axios.interceptors.response页面上的弹框组件用了vux的组件vux地址:htt ...
- Properties类按顺序输出加载内容
Properties类按顺序输出加载内容 最近手写工厂的时候,遇到了加载配置文件时不按照properties文件中的数据的顺序来加载. 一.问题代码 import java.io.IOExceptio ...
- mysql数据库之忘记root密码
1. vi /etc/my.cnf,在[mysqld]中添加 skip-grant-tables 例如: [mysqld] skip-grant-tables datadir=/var/lib/my ...
- 面向对象程序设计(Java) 第4周学习指导及要求
2019面向对象程序设计(Java)第4周学习指导及要求(2019.9.17-2019.9. 23) 学习目标 掌握类与对象的基础概念,理解类与对象的关系: 掌握对象与对象变量的关系: 掌握预定义类 ...
- Spring Data Solr创建动态域报错:org.springframework.data.solr.UncategorizedSolrException
今天在项目中使用Spring Data Solr导入动态域数据报错, 控制台打印错误信息如下 Exception in thread "main" org.springframew ...
- day5_configparser模块
第一种情况:# 配置文件baidu.ini和当前文件在同一级目录: import configparser conf_read = configparser.ConfigParser() conf_r ...
- hbase链接失败
https://blog.csdn.net/u010886217/article/details/84444046
- LeetCode 110. Balanced Binary Tree平衡二叉树 (C++)
题目: Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced bin ...