长话短说,今天介绍如何在windows上使用Git上创建一个可执行的shell脚本

首先我们要知道windows上Git新添加的文件权限是:-rw-r--r--(对应权限值是644),而通常创建的shell脚本都希望天然可执行,故有必要在Windows上使用Git管理shell脚本时保证可执行权限。

早期姿势(一次Git Commit):

C:\Temp\TestRepo>touch foo.sh

C:\Temp\TestRepo>git add foo.sh

C:\Temp\TestRepo>git ls-files --stage
100644 e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 0 foo.sh C:\Temp\TestRepo>git update-index --chmod=+x foo.sh C:\Temp\TestRepo>git commit -m"Executable!"
[master (root-commit) 1f7a57a] Executable!
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100755 foo.sh

参考上图,我们在索引区覆盖文件的可执行位。

最新正统姿势:从Git 2.9开始,您可以在add命令中暂存文件并设置可执行标志:

git add --chmod=+x path/to/file

没用过.gitignore还敢自称高级开发?

如何在Windows上使用Git创建一个可执行脚本?的更多相关文章

  1. git(4)如何在windows上安装git

    windows版本git(1.9.2)下载:点击下载 下完之后点击双击安装: 我安装的是默认的目录:一路next,最后就安装完成了,中间步骤中也有unix下安装的选项: 我的安装目录是在:C:\Pro ...

  2. 分享如何在github上为代码创建一个链接

    从自学前端到现在差不多一个月了,在此期间,一直有一种困惑,如何将自己电脑中编写的代码生成一个链接,以便可以发布呢?今天有幸被高人指点一二,现将其分享. 第一步,网上注册一个github账号 第二步,新 ...

  3. linux下创建一个可执行脚本

    1.touch hello.sh   2.vim hello.sh   键入i   插入#!/bin/sh      echo hello world;  键入:      esc      :   ...

  4. 如何在Window上使用Git

    开始的时候同事只给了一个地址,类似这样:git@111.111.1.1:ABCDEF (1)如何在Windows上使用Git 有一篇博客不错:http://www.tuicool.com/articl ...

  5. windows上使用git

    开始的时候同事只给了一个地址,类似这样:git@111.111.1.1:ABCDEF (1)如何在Windows上使用Git 有一篇博客不错:http://www.tuicool.com/articl ...

  6. windows上配置git

    windows上配置git1.下载mysisigit进入http://msysgit.github.io/,下载,安装,下一步下一步即可. 2.下载tortoisegit进入http://downlo ...

  7. (转)如何在Windows上安装多个MySQL

    原文:http://www.blogjava.net/hongjunli/archive/2009/03/01/257216.html 如何在Windows上安装多个MySQL 本文以免安装版的mys ...

  8. 如何在windows下安装GIT

    如何在windows下安装GIT 分步阅读 Git是一个免费的.开源的版本控制软件.在Windows上安装git,一般为msysgit,官方下载地址为 http://code.google.com/p ...

  9. Redis简介以及如何在Windows上安装Redis

    Redis简介 Redis是一个速度非常快的非关系型内存数据库. Redis提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erla ...

  10. 在windows上搭建git server Gitblit

    在Windows上搭建Git Server   第1步:下载Java并安装Java.我这里下载的是jdk1.7.0_79 第2步:配置Java环境变量 右键” 计算机” => ”属性” => ...

随机推荐

  1. [粘贴]Introducing Exadata X9M: Dramatically Faster, More Cost Effective, and Easier to Use

    https://blogs.oracle.com/exadata/post/exadata-x9m   The Exadata Product Management and Development t ...

  2. Clickhouse 极简单机版本安装部署

    Clickhouse 极简单机版本安装部署 摘要 Clickhouse的安装与部署其实比较简单. 但是为了能够更加简单的部署与使用. 尤其是能够可以方便的添加到镜像内进行运行. 所以记录一下方便快捷的 ...

  3. [转帖]Kafka之ack机制

    前言 之前的博客里说了,Kafka的消息同步是一种ISR机制,本质上是"完全同步"的一种优化. 都在说,消息被ISR中所有副本都写入才算写入成功.但是这样未免定的太死板了,所以,K ...

  4. [转帖]人大金仓- KWR 报告初体验

    [本文正在参与炫"库"行动-人大金仓有奖征文] 开发者请集结丨炫"库"行动--2021人大金仓征文大赛悬赏万元等你来! 最近一直在研究 Oracle 的 AWR ...

  5. [转帖]INTEL MLC(Memory Latency Checker)介绍

    https://zhuanlan.zhihu.com/p/359823092 在定位机器性能问题的时候,有时会觉得机器莫名其妙地跑的慢,怎么也看不出来问题.CPU频率也正常,程序热点也没问题,可就是慢 ...

  6. [转帖]一文入门前景广阔的 eBPF

    https://zhuanlan.zhihu.com/p/567375673 [摘要]eBPF带来的最大的好处即是可以对内核进行编程性处理,实现对内核中不灵活的部分,实现自定义的处理.这种灵活性使得对 ...

  7. [转帖]ARM64体系结构编程与实践:基础知识

    ARM64体系结构编程与实践:基础知识 原创 异步社区 2022-03-30 12:44:16 著作权 文章标签 寄存器 体系结构 v8 ARM64体系结构 ARM 文章分类 物联网 阅读数1570 ...

  8. [转帖]Linux内核网络中的软中断ksoftirqd

    https://zhuanlan.zhihu.com/p/361976930 1. 前言 之前分享过Linux内核网络数据包的接收过程,当执行到网卡通过硬件中断(IRQ)通知CPU,告诉它有数据来了, ...

  9. NOI Linux 下 Geany 配置教程

    没有括号补全? 现在有自动括号补全了! 红色的 a.cpp 的意思是 a.cpp 没有保存. 现在来设置编译运行的快捷键. 不难推测 "%e" 是可执行文件的意思,"%f ...

  10. 02uni-app v-for循环列表 v-if的使用

    onLoad onShow onHide函数的使用## 这三个函数的使用 // 监听页面的加载 参数e是上一个页面传递过来的参数 参数是一个对象 如果没有为空{} onLoad(e) { consol ...