如何在Windows上使用Git建立一個可執行指令碼?

有態度的小碼甲發表於2020-05-22

長話短說,今天介紹如何在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開始,您可以在一個命令中暫存檔案並設定可執行標誌:

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

相關文章