簡體   English   中英

為什么Subversion在簽入時會加重/重新創建文件?

[英]Why does subversion chown/recreate files on checkin?

我有一個個人維基,我在上面做筆記。 Wiki的頁面位於Subversion工作副本目錄“頁面”中,我將其權限設置為www-data:www-data所擁有的664。 我的用戶名位於“ www-data”組中,因此我可以手動檢入並弄亂頁面。

有一陣子,我遇到了一個問題,因為每次運行簽入時,文件將歸我所有:www-data而不是www-data:www-data,並且我將無法再通過以下方式更改Wiki文件:我的網頁界面! 我通過翻轉“頁面”目錄中的setgid位解決了該問題,但是我仍然困惑為什么會首先發生這種情況:

每次我將某項檢查到subversion中時,它似乎就像svn刪除它並重新創建一樣。 為什么? 這種行為是否支持我不知道的某些功能? 有辦法改變嗎?

謝謝!

設置“粘性”權限位。

find -type d -exec chgrp www-data {} + 
find -type d -exec chmod g+s {} + 

這將鼓勵checkout的文件創建階段繼承目錄權限,而不是切換到最后編輯它的人。

編輯 :陶氏+ S == setgid。 此處留給后代和其他讀者的信息。

我認為您使用錯了。 您可以做的仍然是將所有內容都保留在subversion中,並將本地工作副本與開發所依據的www目錄分開。

然后只需使用某些腳本(可能是提交后的鈎子)自動為www用戶更新www工作副本(如果您不希望www foldeR中的.svn目錄,則可以將其導出)。因此。

工作流程為:

  1. 編輯/ home / youruser / yourwiki-working-copy /中的文件
  2. 做svn commit
    • 提交后鈎子更新/ var / www /(或Wiki所在的位置)中的文件
  3. 轉到1。

這樣,您就不必擔心權限問題,甚至可以讓一個以上的人在網站上進行版本控制的所有好處。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM