Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 没有服务器,如何在本地网络上设置版本控制系统?_Visual Studio_Svn_Version Control_Local Network - Fatal编程技术网

Visual studio 没有服务器,如何在本地网络上设置版本控制系统?

Visual studio 没有服务器,如何在本地网络上设置版本控制系统?,visual-studio,svn,version-control,local-network,Visual Studio,Svn,Version Control,Local Network,编辑:好的,我了解到我想我需要一个分布式源代码管理,但是是否有基于UI的源代码管理,它们是否允许您与网络上的其他用户合并 这是一个由两部分组成的问题,现在开始。我想在家里开始开发一个web应用程序(有多个开发人员)。但是,我没有专用服务器,也不想在上付费 所以首先,我不知道在这个案例中使用哪个版本控制系统,因为在工作中我们大部分都有TFS设置,所以我不太熟悉那里的内容。最好的免费CVS/SVN工具是什么 第二,是否可以在没有专用服务器且两个客户端都存储上一次签入时长达一周的源代码的情况下以某种方

编辑:好的,我了解到我想我需要一个分布式源代码管理,但是是否有基于UI的源代码管理,它们是否允许您与网络上的其他用户合并

这是一个由两部分组成的问题,现在开始。我想在家里开始开发一个web应用程序(有多个开发人员)。但是,我没有专用服务器,也不想在上付费

所以首先,我不知道在这个案例中使用哪个版本控制系统,因为在工作中我们大部分都有TFS设置,所以我不太熟悉那里的内容。最好的免费CVS/SVN工具是什么

第二,是否可以在没有专用服务器且两个客户端都存储上一次签入时长达一周的源代码的情况下以某种方式设置CVS/SVN

另外,如果它可以与VisualStudio集成,这也会很有帮助,这一点也不重要

问题:

有五个用户,一个是服务器

服务器已连接:一切正常

服务器已断开连接:任何人都无法共享

我要找的是:

没有服务器:

  • 用户仍然具有基于上次签入的版本id的版本控制
  • 用户必须检查网络上的所有版本,以确保基于其上一个版本id的版本没有过时
  • 如果未签入,则合并/获取最新信息
  • 如果他们正在更新签入,并将当前版本id设置为+1

  • 如果您正在寻找一个没有中央回购的源代码管理,那么您正在寻找一个分布式源代码管理系统,如Git或Mercurial。

    最好的免费CVS/SVN工具是


    另外,在任何机器上设置SVN服务器都很容易。读罚款单

    JetBrains的TeamCity for continuos integration很好,易于配置,您不需要“服务器”,只需要一台正在运行的机器。它与subversion也很好地集成。这是VisualSVN服务器的快速安装。以及VisualStudio的VisualSVN插件。

    我假设在某个时候,您的开发人员将连接到每个插件(可能在您的局域网上),以合并您的所有代码。如果是这种情况,我强烈建议使用DVCS(分布式版本控制系统)。这个街区最受欢迎的孩子是Git,但也有像Mercurial这样的人。如果主要在windows上开发,Mercurial似乎有更好的支持。DVCS的主要优点是,它们专为断开连接的团队设计

    希望有帮助


    Rom

    您可能会对它感兴趣。它有免费版本,足以满足您的所有需求。顺便说一句,toroise SVN甚至支持任何文件夹或闪存驱动器上的存储库,因此您无需在单独的服务器中使用。至于与VS的集成,Visual SVN可以帮助您,但它不是免费的。享受=)

    对于低学习曲线,最容易使用SVN,因为它接近TFS模型。但这也意味着一个专用服务器。我会建议,因为设置起来非常简单。然后,您需要向家庭网络之外的其他开发人员公开它在外部运行的端口。要与Visual Studio集成,请参见。或者像你一样坚持传统客户


    这意味着任何远程开发人员在与存储库交互时都会放慢速度。这就是像这样的选项出现的地方,但当您习惯于集中存储库时,肯定会有一点学习曲线。有一些工具可以将Git与SVN连接起来,以充分利用这两个世界。我没有尝试在Windows环境中使用它们,所以我不会谈论它们的易用性。我刚刚开始在项目中使用Git,主要是在我无法在其他地方设置存储库的情况下。

    您考虑过使用在线托管解决方案吗?这样,您就不必担心设置服务器、管理备份等问题。有一些服务免费提供这种服务——我自己也尝试过的一种是,它使用Subversion,并且有一个免费计划,最多可供三个用户使用,空间为100 MB。对于较小的项目很有用。

    正如一些回复所示,Git或Mercurial等分布式版本控制是您所需要的。如果你能解释一下你的分布式团队是如何工作的,也许可以提出另一种可能的解决方案

    例如,您提到在家中设置工作,并让团队在工作中使用TFS。也许,如果你的工作安排是由工作中的大多数团队组成,而你独自在家工作,那么你可以做如下事情:

  • 让SVN与所有团队成员一起工作,解决复杂性和学习曲线问题
  • 您可以在家中使用git svn,在家中您可以使用svn服务器的本地存储库,您仍然可以在本地工作并进行各种更改和分支,并且只将您想要的更改合并到svn存储库中

  • 这两种方法中的任何一种都能在多台计算机上工作,并且有一个很小的学习曲线吗?Git——学习Mercurial的噩梦——正如您所期望的(只有我的两分钱)或Bazaar一样工作。(我不建议使用不太知名的DVC,如Darc或单调,除非您有特定的要求,可以更好地使用它们)@Erik:不正确。例如,我一直在看Git tutorial@tekpub.com,这似乎是最接近我想要的东西,谢谢Neil。但是,这不符合你的“无专用服务器”要求,我不知怎么错过了阅读。我希望避免拥有一个中央存储库,以避免像我提到的那样至少损失(1周)的工作。如果一台计算机出现故障,则不断设置服务器,因为它们是家用机器。从技术上讲,SVN不需要“专用”服务器iirc。我过去使用过它,不需要持久化进程(使用文件系统或svn+ssh)。然而,这是一个解决方案