當 gitlab 說著讓檔案可執行時,它們到底是什麼意思?

當 gitlab 說著讓檔案可執行時,它們到底是什麼意思?

亞特實驗室說“使鉤子檔案可執行並確保它歸 git 所有「,但我讀到這裡文件可以由所有者、群組、世界執行。那麼它們指的是哪一個呢?

現在我正在改變

-rw-r--r-- 1 git  git     0 Jun 24 00:32 pre-receive

-rwxr--r-- 1 git  git     0 Jun 24 00:32 pre-receive

這足以使其所有者可執行嗎?

答案1

它們的意思是「使其可由將調用該應用程式的使用者執行」。這通常就是在未指定任何其他內容時「使文件可執行」的含義。

如果只有git使用者應該能夠執行該文件,則使其只能由所有者執行。這可能就是他們的意思,因為它是伺服器端掛鉤。如果任何人應該能夠執行該文件,該文件需要可由每個人執行(這不太可能是本意)。

因此(可能與sudo):

$ chown git pre-receive
$ chmod u+x pre-receive     # or a+x if anyone should be able to run it

答案2

確實,我上面提出的建議有效。答案是要做

-rwxr--r-- 1 git  git     0 Jun 24 00:32 pre-receive

相關內容