Git修改檔案許可權

2021-10-14 09:29:11 字數 1707 閱讀 3036

目錄

使用場景

方法一:使用shell修改許可權

方法二:使用git命令修改許可權

有時會涉及到將檔案許可權的修改提交到版本庫中。例如我們建立的shell檔案預設情況下是沒有執行許可權的,如果使用者拉取了倉庫中的**,在執行**前需要手動的將包中的所有shell檔案新增執行許可權。當然我們也可以直接將檔案許可權的修改提交到版本庫中,避免笨拙的手動修改檔案許可權操作。

使用chmod命令將檔案修改好許可權後提交到版本庫中。

$ ll

total 16

drwxr-xr-x 7 liushuochen staff 224 1 10 11:15 ./

drwxr-xr-x+ 125 liushuochen staff 4000 1 10 11:33 ../

drwxr-xr-x 12 liushuochen staff 384 1 10 11:15 .git/

drwxr-xr-x 3 liushuochen staff 96 12 6 20:15 conf/

-rw-r--r-- 1 liushuochen staff 0 11 15 15:08 readme.md

-rw-r--r-- 1 liushuochen staff 19 1 9 22:39 tool.sh

-rw-r--r-- 1 liushuochen staff 34 1 10 11:15 tool2.sh

$ chmod 777 tool.sh

$ git status

on branch master

changes not staged for commit:

(use "git add ..." to update what will be committed)

(use "git restore ..." to discard changes in working directory)

modified: tool.sh

no changes added to commit (use "git add" and/or "git commit -a")

$ git add tool.sh

$ git commit -m "modify tool.sh"

[master c028e04] modify tool.sh

1 file changed, 0 insertions(+), 0 deletions(-)

mode change 100644 => 100755 tool.sh

在windows上是通過使用git命令給檔案增加或撤銷執行許可權。使用 git update-index --chmod=+x 增加檔案的執行許可權,使用git update-index --chmod=-x 撤銷檔案的執行許可權。

git update-index --add --chmod=+x tool2.sh

git commit -am "revise permission access"

[master e5b2b16] revise permission access

1 file changed, 0 insertions(+), 0 deletions(-)

create mode 100755 tool2.sh

git 修改檔案許可權

windows 下的檔案是否可執行是由副檔名決定的,但是linux下是否可執行是檔案的可執行屬性決定的。有時候windows 下開發寫的指令碼程式,想提交的git 倉庫中時就有可執行許可權,以便在linux和macos上轉殖下來就能直接執行。如果在linux下就先新增可執行許可權 後commit和p...

Git修改檔案許可權方法

檢視repository中檔案許可權 git ls tree head 100644 blob xx gradlew 修改許可權git update index chmod x gradlew許可權修改後,相當於檔案進入了index中。提交修改 git commit m revise permiss...

git修改檔案許可權引發衝突

在發布專案到線上時,很多時候需要修改檔案的許可權,如果是使用git版本管理軟體來發布的話,那麼下次更新線上檔案的時候就會提示檔案衝突。明明檔案沒有修改,為什麼會衝突呢?原來git把檔案許可權也算作檔案差異的一部分。下面筆者自己做了個簡單的例子來演示這種情況。1 修改版本庫的檔案的許可權,然後使用di...