2017-04-27 167 views
1

我已經將本地分支上的文件權限更改爲rw-r-但它仍然可以在推送到雲後進行修改,有沒有辦法防止這個?防止在git上修改被修改的文件被修改

+0

如果只有所有者擁有寫入權限,那麼git必須在同一用戶下運行,因爲該文件歸 –

回答

0

我想你的意思是:

  • 你想使一個文件只能由你寫的,主人
  • 你想在圓通權限的這些文件推送到遠程(例如到位桶雲或GitHub上)
  • 您希望克隆的其他用戶回購被阻止對這些文件進行更改,因爲您最初將它們設置爲只能由文件所有者(最初是您)進行編輯。

這裏有兩個問題。

  1. Git不會保留您設置的所有權限更改。它只會識別你是否已經創建了特定的文件可執行文件。在git倉庫中,文件通常只有以下一組權限:644(所有者可以讀取+寫入;組/每個人都可以只讀)或755(所有者可以讀取,寫入和執行;組/每個人都可以讀取&執行只要)。你不能施加進一步的權限限制,因爲git根本不會存儲它們或將它們推送到遠程git主機當我作爲用戶克隆存儲庫時,所有文件都由我的本地用戶帳戶創建,現在我是是這些文件的所有者。即使這些權限是由git跟蹤的,但仍然不起作用,因爲任何克隆了repo的用戶都擁有這些文件的本地副本。

這聽起來像你真正想要做的是防止用戶更改遠程存儲庫中的某些文件。根據存儲庫主機,你應該能夠實現某種類型的git預接收鉤來拒絕推送。瞭解更多關於你的git託管服務在這裏可以支持的內容,你應該能夠實現解決這個問題的東西。

+0

感謝daveruinseverything,您的回答是非常有用的......^_ ^ –