Некоторые сотрудники и я обращаемся к репозиториям SVN через SSH. Чтобы сделать репозитории доступными для чтения и записи для всех наших учетных записей, мы создали группу под названием «разработчики» и создали каждый репозиторий, принадлежащий этой группе.
Однако, когда кто-то из нас фиксирует, некоторые файлы в репозитории имеют свои права, измененные от adminuser: от разработчиков до user1: user1. Это предотвращает передачу каких-либо других пользователей в один и тот же репозиторий.
Раньше я работал над этой проблемой, но забыл, как я это сделал. Я слышал идею «обертки», которая включает в себя запись сценария оболочки для svnserve, который изменяет umask на 002, а затем выполняет фактический двоичный файл svnserve. Но это, похоже, сейчас не работает для меня. Как мне решить эту проблему?
Хорошо, я нашел. Полные инструкции можно найти здесь: http://odyniec.net/articles/ubuntu-subversion-server/
В частности, это говорит
Кроме того, вам нужно убедиться, что все новые файлы и каталоги, созданные в каталоге репозиториев (другими словами, все, что связано с репозиториями), также будут принадлежать группе. Для этого снова используйте chmod для установки бита set-group-ID в каталоге, что приводит к тому, что любой файл, созданный внутри него, будет иметь такое же групповое право собственности, что и сама директория. Эффективно все в РЕПО будет принадлежать группе svn. $ sudo chmod g+s /usr/local/svn/reposДля меня, поскольку у меня было несколько репозиториев, я использовал
$ sudo chmod -R g+s /usr/local/svn/repos
Хорошо, я нашел. Полные инструкции можно найти здесь: http://odyniec.net/articles/ubuntu-subversion-server/
В частности, это говорит
Кроме того, вам нужно убедиться, что все новые файлы и каталоги, созданные в каталоге репозиториев (другими словами, все, что связано с репозиториями), также будут принадлежать группе. Для этого снова используйте chmod для установки бита set-group-ID в каталоге, что приводит к тому, что любой файл, созданный внутри него, будет иметь такое же групповое право собственности, что и сама директория. Эффективно все в РЕПО будет принадлежать группе svn. $ sudo chmod g+s /usr/local/svn/reposДля меня, поскольку у меня было несколько репозиториев, я использовал
$ sudo chmod -R g+s /usr/local/svn/repos
Хорошо, я нашел. Полные инструкции можно найти здесь: http://odyniec.net/articles/ubuntu-subversion-server/
В частности, это говорит
Кроме того, вам нужно убедиться, что все новые файлы и каталоги, созданные в каталоге репозиториев (другими словами, все, что связано с репозиториями), также будут принадлежать группе. Для этого снова используйте chmod для установки бита set-group-ID в каталоге, что приводит к тому, что любой файл, созданный внутри него, будет иметь такое же групповое право собственности, что и сам каталог. Эффективно все в РЕПО будет принадлежать группе svn. $ sudo chmod g+s /usr/local/svn/reposДля меня, поскольку у меня было несколько репозиториев, я использовал
$ sudo chmod -R g+s /usr/local/svn/repos
Хорошо, я нашел. Полные инструкции можно найти здесь: http://odyniec.net/articles/ubuntu-subversion-server/
В частности, это говорит
Кроме того, вам нужно убедиться, что все новые файлы и каталоги, созданные в каталоге репозиториев (другими словами, все, что связано с репозиториями), также будут принадлежать группе. Для этого снова используйте chmod для установки бита set-group-ID в каталоге, что приводит к тому, что любой файл, созданный внутри него, будет иметь такое же групповое право собственности, что и сама директория. Эффективно все в РЕПО будет принадлежать группе svn. $ sudo chmod g+s /usr/local/svn/reposДля меня, поскольку у меня было несколько репозиториев, я использовал
$ sudo chmod -R g+s /usr/local/svn/repos
Хорошо, я нашел. Полные инструкции можно найти здесь: http://odyniec.net/articles/ubuntu-subversion-server/
В частности, это говорит
Кроме того, вам нужно убедиться, что все новые файлы и каталоги, созданные в каталоге репозиториев (другими словами, все, что связано с репозиториями), также будут принадлежать группе. Для этого снова используйте chmod для установки бита set-group-ID в каталоге, что приводит к тому, что любой файл, созданный внутри него, будет иметь такое же групповое право собственности, что и сама директория. Эффективно все в РЕПО будет принадлежать группе svn. $ sudo chmod g+s /usr/local/svn/reposДля меня, поскольку у меня было несколько репозиториев, я использовал
$ sudo chmod -R g+s /usr/local/svn/repos