如何在Windows上使用Git创建一个可执行脚本?

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

长话短说,今天介绍如何在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


文件权限位由 -rw-r--r--(644)  变为了 -rwxr-xr-x (755可执) 。

我们是在索引区覆盖文件的可执行位。


e5df6624a407f4609b920543c459aab3.jpg


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


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


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


相关文章
|
3月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
130 2
|
4月前
|
监控 关系型数据库 MySQL
PowerShell 脚本编写 :自动化Windows 开发工作流程
PowerShell 脚本编写 :自动化Windows 开发工作流程
168 0
|
5月前
|
存储 Shell 开发工具
8-8|windows上Git报错
8-8|windows上Git报错
|
5月前
|
Python Windows
python之windows脚本启动bat
python之windows脚本启动bat
|
6月前
|
安全 Shell Windows
记windows自定义bat脚本自启动
【8月更文挑战第27天】在Windows系统中,可让自定义bat脚本自启动的方法有两种:一是利用“启动”文件夹,通过创建bat脚本的快捷方式并将其放置于该文件夹;二是使用任务计划程序,创建一个启动时触发的任务来运行bat脚本。需确保脚本正确安全,避免对系统产生不良影响。
468 0
|
6月前
|
开发工具 git Python
通过Python脚本git pull 自动重试拉取代码
通过Python脚本git pull 自动重试拉取代码
237 5
|
8月前
|
关系型数据库 MySQL 数据安全/隐私保护
windows系统bat批处理 mysql 脚本启动关闭
windows系统bat批处理 mysql 脚本启动关闭
254 3
|
8月前
|
Windows
windows系统vbs脚本 提取文件夹中的所有文件名
windows系统vbs脚本 提取文件夹中的所有文件名
59 0
|
8月前
|
Windows
windows系统vbs脚本 恶搞将系统搞崩 死机 以及解决
windows系统vbs脚本 恶搞将系统搞崩 死机 以及解决
86 1
|
8月前
|
Windows
windows系统vbs脚本 恶搞关不掉的窗口 以及解决办法
windows系统vbs脚本 恶搞关不掉的窗口 以及解决办法
159 2