我发出以下命令来查找 .svn 目录:
find . -name ".svn"
Run Code Online (Sandbox Code Playgroud)
这给了我以下结果:
./toto/.svn
./toto/titi/.svn
./toto/tata/.svn
Run Code Online (Sandbox Code Playgroud)
我如何处理所有这些行rm -fr
以删除目录及其内容?
在 Windows 中,我有服务管理器,在那里我可以看到所有系统服务,这些服务可以通过 Windows 本身启动,我设置了它使用的用户,权限管理在那里,我可以将变量和其他一些信息传递给服务,我可以命名它们,我可以创建一个程序的重复服务等等。所以我在 Windows 中有一个主要的管理工具。
我如何在 Linux 中做同样的事情?如何在启动时触发运行“svnserve”,或者如何将服务配置为在特殊上下文中运行。如何查看所有“程序化”服务?
在我的服务器上,我有目录/srv/svn
.
是否可以将此目录设置为具有多个组所有权,例如devFirmA
,devFirmB
和devFirmC
?
关键是,我想subversion
版本控制管理跨多个存储库的多个用户,我不知道如何合并 /srv/svn
,存储库的根目录,权限。例如,我有三个公司,FirmA
,FirmB
和FirmC
。现在,/srv/svn
我在里面创建了三个目录,FirmA
, FirmB
,FirmC
在其中我为每个项目创建了存储库,现在我不知道如何建立权限方案,因为里面的所有元素都归/srv/svn
拥有root:root
,这不行,还是我错误的?
我已将 SSH 配置为在端口 20000 上。当我尝试时:
svn co svn+ssh://server.com:20000/home/svn/proj1 proj1 --username jm
Run Code Online (Sandbox Code Playgroud)
我得到
svn: To better debug SSH connection problems, remove the -q option
from 'ssh' in the [tunnels] section of your Subversion configuration
file. svn: Network connection closed unexpectedly
我想我还需要告诉 SVN 使用端口 20000 吗?
我在 Ubuntu 11.10
我想为一个颠覆项目做一个无密码的 ssh 连接。现在我正在使用 ssh+svn,这有点烦人,因为我每次想与服务器进行交易时都必须输入密码。
我在网上找到了几个关于如何为无密码 ssh 生成密钥的教程,但它们似乎都假设我在远程系统上使用与我的家庭系统相同的用户名。但是,我用于 ssh+svn 的用户名与我正在运行的系统上的用户帐户名不同。我该如何正确设置?我只是更改密钥文件中的名称并不走运。
我正在尝试svn
从自动脚本中将我的 https 用户名+密码保存到 ~/.subversion 。我可以在命令行上传递凭据,但我不想被提示是否保存未加密的密码。不幸的是,这不会创建 ~/.subversion/:
svn --non-interactive --trust-server-cert --username myusername --password secret co https://private.example.com/src/repo/
仅供参考我想一个Dockerfile调用一个做到这一点bower install
与bower.json
引用受密码保护的svn的。不幸的是,无法bower
通过命令行或环境将 svn 凭据传递给。
我目前正在通过以交互方式运行 svn 并让它创建 ~/.subversion,然后压缩整个目录并将ADD
其放入 Dockerfile 来解决它。我想我可以查看 ~/.subversion 中的文件格式并用脚本创建它,但宁愿让 svn 来做。
更新 #3:我想我找到了。
/etc/httpd/conf.d/subversion.conf
<Location /repos>
DAV svn
SVNPath /var/www/svn/repos
AuthType Basic
AuthName "Subversion repos"
AuthUserFile /etc/svn-auth-conf
Require valid-user
</Location>
Run Code Online (Sandbox Code Playgroud)
svn-auth-conf 的格式为
user1:$apr1$randome letters ... $random letters and numbers
Run Code Online (Sandbox Code Playgroud)
我觉得我使用了一些命令行工具来添加用户,但我不记得是什么。
更新 #2: locate http.conf 给出这些结果
/usr/share/logwatch/default.conf/logfiles/http.conf
/usr/share/logwatch/default.conf/services/http.conf
Run Code Online (Sandbox Code Playgroud)
我在其中任何一个中都没有看到与颠覆有关的任何内容。如果有帮助,我可以在这里发布文件。
原问题:
几年前,我安装并设置了 subversion。我不记得我是如何添加用户的。我现在需要添加另一个,但是当我检查passwd
文件时,没有定义用户,文件中也没有设置任何内容svnserve.conf
——两者都注释掉了所有内容。这是我可以找到通过谷歌添加用户的唯一方法。所以我试了一下:
user1 = password1
user2 = password2
Run Code Online (Sandbox Code Playgroud)
anon-access = none
auth-access = write
pasword-db = passwd
authz-db - authz
realm = repos
Run Code Online (Sandbox Code Playgroud)
但我仍然只能使用 访问它user1
,即使我user1
不是 linux 服务器上的用户。还有其他方法可以添加用户还是我的配置有问题?
更新:
我已将以下行添加到我的 svnserve.conf 文件中
authz-db …
Run Code Online (Sandbox Code Playgroud) 处理一个 subversion 存储库和一个不太了解它是如何工作的新用户。
长话短说,由于他们的本地结构由于复制随机 .svn 文件夹而混乱,我做了以下事情:
现在我们处于最后一步 - 获取暂存文件夹内容以覆盖干净的内容。
我需要一个命令将暂存目录的内容复制到干净目录,删除仅在干净目录中的所有内容,但保留干净文件夹的 .svn 文件夹。
这听起来像是 rsync 的工作。以下命令是否正确?
rsync -avr --exclude=.svn* [staging] [clean]
Run Code Online (Sandbox Code Playgroud) 您能否为 UNIX(或 Mac OS X)用户推荐一个很好的 Subversion 介绍?它可以假定熟悉基本的命令行用法,但不熟悉任何高级主题(此处将 bash 脚本视为“高级用法”......)
理想情况下,该指南应包括:
简要介绍 VCS 的用途(一般而言),特别是 Subversion 模型;
快速开始使用(结帐、更新/编辑/提交周期)
安装说明; 如果它提到它已经可用于所有主要操作系统并引导人们从包安装而不是从源代码编译,则加分...
默认情况下,Subversion 允许用户以纯文本格式保存他们的密码~/.subversion/auth/svn.simple
。我正在研究在 svn 中存储加密密码的选项,但至少和尽快,我想完全禁用为我们所有用户存储密码的能力。我们正在运行 Subversion 1.6.17。
我可以通过配置文件在用户的主目录中禁用它。
~/.subversion/servers:
[global]
# Password / passphrase caching parameters:
store-passwords = no
store-plaintext-passwords = no
Run Code Online (Sandbox Code Playgroud)
但是,用户可以根据需要更改配置文件。没有系统范围的 svn 配置文件吗?我见过的几个选项:
选项1
在 1.8-dev 中,Subversion 的配置脚本接受一个 --disable-plaintext-password-storage 选项来绕过存储明文密码和客户端证书密码的逻辑。
我不想更新到开发版本。
选项 2
/etc/subversion/config
AFAIK,仅当用户的主目录中没有配置文件时才使用此配置文件。
选项 3
添加 cron 作业以删除~/.subversion/auth/svn.simple
. 因此,即使他们更改了他们的 svn 配置文件,我们的 cron 作业也会杀死所有存储的密码。然而,即使每分钟运行一次也不能保证我们的备份系统不会抓取包含明文密码的文件。
想法?
subversion ×10
password ×2
ssh ×2
books ×1
debian ×1
find ×1
group ×1
permissions ×1
rm ×1
rsync ×1
services ×1
shell-script ×1
startup ×1
sysvinit ×1
tcp ×1