我的公司正在转向TFS。我们目前正在使用Tortoise SVN。我希望能够在SVN中留下一个项目,但是有些如何禁用它,以便人们不能提交更改,但我们仍然可以查看历史记录。如何在Tortoise SVN中禁用项目
到目前为止,我已经重命名了一个项目并发布了一条消息,表明它目前在TFS中,而不是进行更改。我的问题是,所有的历史都消失了。我想保持历史。
请帮忙。
我的公司正在转向TFS。我们目前正在使用Tortoise SVN。我希望能够在SVN中留下一个项目,但是有些如何禁用它,以便人们不能提交更改,但我们仍然可以查看历史记录。如何在Tortoise SVN中禁用项目
到目前为止,我已经重命名了一个项目并发布了一条消息,表明它目前在TFS中,而不是进行更改。我的问题是,所有的历史都消失了。我想保持历史。
请帮忙。
我最终做的是从SVN中删除项目。这使它消失,但如果你回到以前的版本,你会发现删除版本。如果您认为您能够下拉签入的最新版本,但无法提交更改。您也可以从这一点看到所有历史记录。
对于问题的第一部分,“我如何在SVN中创建只读?”,我不知道。如果您进行完整的历史记录迁移,则不需要那么做。
您将最新的源代码移至TFS,因此当然您没有历史记录。如果你想将历史从SVN迁移到TFS,我见过的最简单的方法就是使用Git作为中介。
Git natively supports SVN。 There are tools that allow Git and TFS to interoperate。既然你可以从SVN获得代码到Git中,并且你可以从Git获得代码到TFS中,你可以将你的SVN版本历史转储到Git中,然后将它从Git迁移到TFS。
的基本过程是这样的:
git svn
把你的SVN仓库到Git仓库这样,历史将被保留,但时间戳将丢失。
当然,我假设你在使用TFVC。如果您使用的是Git-in-TFS,则更容易:从SVN数据创建Git存储库后,只需将其推入TFS即可完成。
好东西,我知道如何禁用任何承诺或以上版本库的修改是通过在服务器使用start-commit
hook
挂钩是一个简单的.bat
文件与此内容:
echo committing is disabled for that repository. >&2
exit 1
名称文件start-commit.bat
,并将其放入存储库的hooks
文件夹中。这就是全部。
注:
这是一个windows
脚本。对于其他服务器,你需要另一个脚本。
我们没有进行迁移。我们没有进行迁移的主要原因是因为项目没有正确设置。我基本上不得不重建项目,然后检查他们到TFS。我们也没有使用GIT。我真正想要做的就是,让SVN非常明显,项目不再从那里编码,并且您需要使用TFS版本。我不知道正确的策略,或多或少,我希望如何断开任何给定项目的所有当前结账,以便他们必须从TFS获取它,但保留历史IN SVN。 – hondaman2003 2014-12-11 15:07:02