有没有办法将带有HISTORY的SourceSafe迁移到SVN?
理想情况下我想使用VisualSVN Server,但我真的不想丢失我的SourceSafe历史记录.如果我必须,我会.
svn version-control visualsvn visual-sourcesafe visualsvn-server
底格里斯河网站
http://subversion.tigris.org/getting.html#windows
有一个链接到另一个svn服务器,称为CollabNet SVN服务器.有人使用它并知道它比VisualSVN服务器更好或更好吗?
我正在尝试使用Subversion repo设置我的家庭服务器(经过一些更改).
我在Windows Server 2003服务器上卸载了重新安装的VisualSVN Server,并且回购的地址(即URL)是https://server.network.local/svn/.
我可以通过IE浏览到该地址,并获取存储库列表(我必须点击过去的证书错误),但当我指向它时,我得到它
OPTIONS of 'https://server.network.local/svn': Could not resolve hostname
'server.network.local': No such host is known.
(https://server.network.local)
Run Code Online (Sandbox Code Playgroud)
我可以ping和tracert到服务器没有问题,所以我不知道这笔交易是什么.
我在Windows服务器中配置了一个Subversion存储库,还有2000多个版本.我想将它从Windows迁移到Linux,所以我想备份所有修订并恢复到linux下的新svn配置.
我怎么做 ?
我在linux服务器上运行SVN服务器.我要离开城镇一个星期,没有互联网接入,因此没有SVN访问.
所以我想弄清楚如何在我的笔记本电脑上用我拍摄存储库的快照,然后当我回来时将新的版本合并回现有的存储库...
我的笔记本电脑运行Windows 7,所以首先,我认为VisualSVN服务器可能是我将在本地运行的服务器.
我应该能够转储当前的存储库,然后将其加载到我的笔记本电脑上的新存储库中
但我不确定的是,当我从城外回来时.我将在笔记本电脑上的SVN服务器上进行所有这些新修订.如何转储然后只将这些新修订版加载到我的linux服务器上的存储库中?
如果我使用>svnadmin dump --revision 50:75(假设修订版50到75表示我在笔记本电脑上进行的新修订),我可以简单地将该转储文件加载到我的Linux服务器上的现有存储库中吗?这很容易吗?我知道有一些关于存储库UUID的东西可能会导致一些问题......
还有一点需要注意,我是目前唯一为此SVN存储库做贡献的开发人员.因此不需要代码合并.
UPDATE
我不知道我只能使用本地访问存储库file:///.所以这可能比运行VisualSVN Server更好.但是,主要问题仍然存在:如何从一个存储库到另一个存储库获取新版本?
我目前在Windows Server 2008 R2 x64计算机上运行VisualSVN Server Enterprise,我在本地安装和设置没有任何问题.我需要为英国用户提供远程访问权限,并想知道如何在Windows服务器上完成此操作.我认为他将使用https访问它,但我不知道我在本地需要做什么来授予远程访问权限.任何帮助或方向将不胜感激.谢谢.
据我所知,VisualSVN Server是一个服务器,而TortoiseSVN是一个客户端.但我也可以只使用tortoise svn创建存储库,而不需要Visual SVN.
这两者之间有什么区别或者我错过了什么?
我在与开发工作站不同的计算机上使用VisualSVN Server Standard Edition。是否可以在VisualSVN Server计算机上的开发工作站上创建新的存储库?或者,我是否必须物理上访问该计算机以创建新的存储库?
我查看了这个问题,并使用WMI界面创建了一个repo并为用户添加权限.我现在遇到的问题是:如果我正在尝试更新我创建的repo并将另一个用户添加到repo,它会清除当前使用(完全从repo中删除它)并只添加一个人.
所以,我需要弄清楚如何做两件事:
我想,一旦有了,我就可以弄清楚其余的互动.我提到了wof文件并发现了我认为需要实现的这些条目:
class VisualSVN_Repository
[provider("VisualSVNWMIProvider"), dynamic]
class VisualSVN_Repository
{
[Description ("Repository name"), key]
string Name;
...
[implemented] void GetSecurity([in] string Path,
[out] VisualSVN_PermissionEntry Permissions[]);
[implemented] void SetSecurity([in] string Path,
[in] VisualSVN_PermissionEntry Permissions[],
[in] boolean ResetChildren = false);
}
Run Code Online (Sandbox Code Playgroud)
我正在实现set security,如下所示:
static public void UpdatePermissions(string sid, string repository, AccessLevel level, bool isAdmin = false)
{
ManagementClass repoClass = new ManagementClass("root\\VisualSVN", "VisualSVN_Repository", null);
ManagementObject repoObject = repoClass.CreateInstance();
repoObject.SetPropertyValue("Name", repository);
ManagementBaseObject inParams =
repoClass.GetMethodParameters("SetSecurity");
inParams["Path"] = …Run Code Online (Sandbox Code Playgroud) 使用:VisualSVN服务器,TortoiseSVN,AnkhSVN
我使用TortoiseSVN为我所有的.NEt项目和我想要保留的源/资源创建初始存储库.
我计划在Visual Studio解决方案中使用tortoiseSVN进行所有常规源控制操作和AnkhSVN.
我的问题是我的存储库现在有我不需要的开发人员/机器特定的文件/目录.
我知道,如果您从Visual Studio中将解决方案添加到存储库,则使用Microsoft的SCC API不会包含Ankhsvn.
所以我现在需要的是从svn存储库批量删除必要的文件/目录.
这些包括(但我可以添加更多):
thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk *.msi* .res *.pch *.suo *.exp *.*~ *.~* ~*.* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj Generated Logs *.csproj.user *.user
Run Code Online (Sandbox Code Playgroud)
我怎么能一个接一个地去做呢?
附加信息:
一个想法是Micha在这里提出的建议,但必须在迁移到存储库之前进行.
svn ×10
visualsvn-server ×10
tortoisesvn ×5
visualsvn ×3
ankhsvn ×1
c# ×1
collabnet ×1
repository ×1
windows ×1
wmi ×1