每次在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自动提交脚本的更多相关文章

  1. hadoop自动提交脚本

    自动提交到hadoop系统,然后调用wordcount的任务,并下载输出的文件. #!/bin/sh #从给定的路径获取文件列表,提交到hadoop系统,使用wordcount的功能统计单词数量 #e ...

  2. 【颓废篇】Py:从零开始的poj自动提交

    之前学习了一些python的爬虫技术... 已经可以通过python来水blog的阅读量了 你知道的太多了, 然而你看我这个blog惨不忍睹的访问量, 有人吗? 有人吗? 今天突然又双叒叕心血来潮想写 ...

  3. 自动提交Git branch代码评审到Review Board系统

    背景 敏捷软件开发中,越小的反馈环,意味着软件质量越容易得到保证. 作为组件团队,我们的开发任务中,往往存在一些特性涉及到几十个功能点,开发周期持续数周或数月的情况.如何在开发过程中保证软件质量,是个 ...

  4. 做了一个简易的git 代码自动部署脚本

    做了一个简易的git 代码自动部署脚本 http://my.oschina.net/caomenglong/blog/472665 发表于2个月前(2015-06-30 21:08)   阅读(200 ...

  5. .NET Core下操作Git,自动提交代码到 GitHub

    .NET Core 3.0 预览版发布已经好些时日了,博客园也已将其用于生产环境中,可见 .NET Core 日趋成熟 回归正题,你想盖大楼吗?想 GitHub 首页一片绿吗?今天拿她玩玩自动化提交代 ...

  6. # .NET Core下操作Git,自动提交代码到

    .NET Core下操作Git,自动提交代码到 转自博客园(阿星Plus) .NET Core 3.0 预览版发布已经好些时日了,博客园也已将其用于生产环境中,可见 .NET Core 日趋成熟 回归 ...

  7. 使用RBTool自动提交code review请求

    使用RBTool自动提交code review请求 前言 让我们回想一下手工提交review请求的过程: 首先得用 svn diff > filename.diff 生成diff文件. 然后输入 ...

  8. git学习------>如何修改git已提交的记录中的Author和Email?

    一.背景 最近搭建好GitLab后,准备陆陆续续的将之前在SVN仓库中保存的代码迁移到GitLab上,昨天顺利将三个Android组件的代码迁移到GitLab后,其他同事发现迁移是成功了,但是pull ...

  9. Git自动部署

    Git自动部署文件位于repository下面的hooks里的post-receive #!/bin/sh set -e git-update-server-info gitosis-run-hook ...

随机推荐

  1. BUUCTF--checkin

    文件上传文件上传一般验证方式:1.本地js验证(客户端)2.MIME验证(服务端)3.拓展名验证(服务端)4.脚本内容(文件头)验证(服务端) 通常会用到exif_imagetype()函数,这个函数 ...

  2. SQL行转列,列转行

    SQL 行转列,列转行 行列转换在做报表分析时还是经常会遇到的,今天就说一下如何实现行列转换吧. 行列转换就是如下图所示两种展示形式的互相转换 行转列 假如我们有下表: SELECT * FROM s ...

  3. pushad与popad

    版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明.2019-08-24,00:40:12作者By-----溺心与沉浮----博客园 PUSHAD与POPAD 这两条指令其实就是讲EAX,E ...

  4. springboot读取自定义properties配置文件方法

    1. 添加pom.xml依赖 <!-- springboot configuration依赖 --> <dependency> <groupId>org.sprin ...

  5. python中property简单使用与实现

    property简单使用 class P: """ property简单使用 """ def __init__(self,name): se ...

  6. 使用spring aop 记录接口日志

    spring配置文件中增加启用aop的配置 <!-- 增加aop 自动代理配置 --> <aop:aspectj-autoproxy /> 切面类配置 package com. ...

  7. E10【选款式】I don't like that style

    核心句型 I don't like that style. 我不喜欢那个款式 场景对话 A:Look at those shoes. They're really nice. 瞧那双鞋.可真漂亮 B: ...

  8. 201871010134-周英杰《面向对象程序设计(java)》第十六周学习总结

    项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/ ...

  9. 201871010135 张玉晶《面向对象程序设计(java)》第十四周学习总结

    项目 内容 这个作业属于哪个过程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/zyja/p/11963 ...

  10. Maven 中 dependencyManagement 元素,知识点

    Maven 提供的 dependencyManagement 元素既能让子模块继承到父模块的依赖配置,又能保证子模块依赖使用的灵活性.在 dependencyManagement 元素下的依赖声明不会 ...