Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
asp.net:同步开发环境_Asp.net_.net_Visual Studio - Fatal编程技术网

asp.net:同步开发环境

asp.net:同步开发环境,asp.net,.net,visual-studio,Asp.net,.net,Visual Studio,对VisualStudio和一般编程来说都是新手 我正在着手一个asp.net项目。在家里,我有一台运行Windows2008Server的计算机,运行的是SQL2008和Visual2008 我想在我的笔记本电脑win2008/sql2008/vs2008上安装同样的东西,这样我就可以随身携带了 我想知道的是,我将如何同步这两个项目,项目将同步到我的笔记本电脑,我可以随身携带,然后当我返回并连接到我的网络时,它将同步回我的主工作站,以便两者始终相同?将项目文件直接保存到thumb驱动器怎么样

对VisualStudio和一般编程来说都是新手

我正在着手一个asp.net项目。在家里,我有一台运行Windows2008Server的计算机,运行的是SQL2008和Visual2008

我想在我的笔记本电脑win2008/sql2008/vs2008上安装同样的东西,这样我就可以随身携带了


我想知道的是,我将如何同步这两个项目,项目将同步到我的笔记本电脑,我可以随身携带,然后当我返回并连接到我的网络时,它将同步回我的主工作站,以便两者始终相同?

将项目文件直接保存到thumb驱动器怎么样


或者,您可以设置一个批处理文件,以便在每次会话前后将这些文件复制到thumb驱动器或从thumb驱动器复制这些文件。这更麻烦,但也更安全。

听起来你想用它


如果不是这样(你不想每次从一台机器切换到另一台机器时都签入更改),你可能可以用脚本编写一些东西。

听起来你需要一个源代码管理系统。 此解决方案通常用于在一组开发人员之间同步代码库,但对于多个工作站上的单个开发人员来说,这种模式仍然适用

事实上的开源RCS是

另见: 您需要一个(VCS)或专用的文件同步解决方案,如

如今,版本控制系统有两种:分布式或非分布式。在分布式VCS中,存储库(项目)的每个副本都是相等的,可以在没有网络访问的情况下工作,可以用作生成新工作副本的源,等等。示例:DARC、git、mercurial、bazaar

非分布式(经典)VCS假定您将设置某种版本控制系统,并通过网络从每个工作场所连接到该系统。示例:CVS、SVN、Visual SourceSafe


我会坚持使用分布式版本控制系统(mercurial?)。

就我个人而言,我可能会在某个地方使用SVN repo。。。不过,还有一个选择:将虚拟机放在便携式硬盘(USB等)上,并将整个开发操作系统视为便携式


请注意,VM或thumb驱动器不会取代版本控制;这不仅仅是为了确保你有一份副本。。。既然你说你是一般编程新手,我会自愿推荐你:抓取和(一个客户);这两个都是免费的,在Windows上工作非常简单-非常“下一步确定”。其他版本控制系统也可用,但使用起来很简单。

关于VCS建议;如果您打算在短时间内进行构建,并且希望在完成提交时代码不会完全稳定,那么您应该确保使用中央或分布式系统中的分支功能,以确保不会用不必要的脏污污染主干。这样,你就可以在不破坏核心的情况下,经常心满意足。在《颠覆》中,这确实会带来一个失去清晰历史的惩罚,但它仍然会存在,尽管不是主干,而是分支。一些分布式系统可以更好地处理这个问题。杰夫·阿特伍德在这方面做得很好

如果两个站点中的项目文件夹完全相同,可以使用Windows“robocopy”命令将一个文件夹中的更改同步到另一个文件夹中

使用该命令创建一个批处理(.bat)文件,然后双击该文件进行同步。该命令可识别网络路径,因此您可以使用“
\\my\u workstation\path\to\project
”作为目标文件夹。以下命令将源文件夹中的所有文件和子文件夹(
/E
)镜像到目标文件夹中

robocopy "source_folder" "destination_folder" /E /MIR

除了同步文件夹外,最好有一个版本控制系统。如果出现问题,它允许您返回到代码的工作状态。阅读其他答案以了解更多信息。我个人喜欢Svn,因为我发现它很简单,而且很直截了当(跟随答案的链接)。

< P>我喜欢微软的Team Foundation Server的SelvS集特性。我提供了一种将他们正在处理的代码放入修订控制系统的能力,而无需创建变更集(或SVN术语中的修订)。其中一台转到另一台机器上,并将架子集卸下

更大的问题是在应用程序后面同步数据库。这要求创建和更新数据库所需的所有脚本都必须是项目的一部分。您还需要生成测试数据的脚本。

请签出 在许多设备中同步文件的另一种简单新方法

安装Windows Live Mesh并将您的项目文件夹设置为Mesh文件夹,它将自动同步到您添加的设备。我在过去的一个月里一直这样做,效果非常好。我可以继续使用我所有的3台机器,而不需要任何额外的复制/粘贴
请注意,live mesh的范围远远超出此功能

如果您不想走源代码管理系统的路(因为数据库和虚拟目录仍然很难同步),您可以设置一个虚拟机,然后在此基础上进行开发。在计算机之间移动时,可以将虚拟硬盘驱动器从一台计算机复制到下一台计算机

idea的问题可能是:

  • 有了VS2008、SQL2008和Win2008,您的虚拟硬盘可能会大一些,并且需要一些时间在PC之间进行复制
  • 由于您运行的是虚拟PC,因此您的环境可能会稍微慢一些,但是如果您为它提供足够的资源并杀死所有在后台运行的进程,您应该会很好
此解决方案的一个好处是,您现在可以在家用PC上运行say Vista,在笔记本电脑上运行XP,并且仍然可以在Win2008环境下开发。(如果你愿意的话)