解决 是否可以在不保存项目的情况下进行调试?

克隆

新成员
已加入
2020年8月20日
留言内容
3
编程经验
5-10
大家好,

我自己寻找潜在答案后的第一篇文章。多年来,我一直在使用VB6进行编程(出于个人喜好和业余爱好),现在我决定为Windows窗体项目使用VS2019 Community Edition学习C#。

当我使用VB6时,我可以在项目中进行许多更改(窗体和代码)而无需保存。这样我可以测试我是否喜欢自己在做什么。如果进行了大的更改,最后我想放弃它们,则只需要退出而无需保存,并继续进行任何更改之前保留的项目。我试图找到在VS中执行此操作的方法,但是每次我启动degug进程时,它都会自动保存整个项目,因此,如果我不喜欢所看到的内容并决定返回到以前的版本,则需要还原我手动进行更改,如果有几处更改,这是很疯狂的。所以...在开发Windows窗体项目时,如果不保存就无法调试吗?

最好的给你。我希望成为这个论坛的“居民”。
 

跳伞

工作人员
已加入
2019年4月6日
留言内容
2,531
地点
弗吉尼亚州切萨皮克
编程经验
10+
简短的回答:不。但是,只要您停留在同一季节内,VS确实可以使您撤消保存操作。就个人而言,我建议您改用源代码控制。您可以创建分支,并且仅在需要更改时才将所需的更改合并到主分支中。源代码管理的最佳部分是:您可以比较版本以查看更改。
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,524
地点
悉尼,澳大利亚
编程经验
10+
源代码管理确实是必经之路。 DevOps帐户是免费的,并且VS内置了对它的支持,但是还有其他一些选项也很容易。

在大多数情况下,可能无需为单独的开发人员创建分支。如果您在团队中,则可以在一个分支中测试变更,而其他成员继续对主要开发分支进行变更。作为一个单独的开发人员,通常只需在您的主分支上进行更改,然后简单地放弃它们以恢复到上一个​​同步状态就足够了。如果您可以使用多台机器进行开发,则基于云的源代码控制也非常好,因为您始终可以使用当前代码,而不必在它们之间手动进行复制。
 

羊皮

退休程序员
工作人员
已加入
2018年9月5日
留言内容
1,926
地点
英国
编程经验
10+
如果您可以使用多台机器进行开发,则基于云的源代码控制也非常好,因为您始终可以使用当前代码,而不必在它们之间手动进行复制。
我就是做这个的。云服务器和云服务被低估了。这是在与该云同步的各种服务器/ PC上管理多个项目的好方法。其他开发人员也可以很轻松地与您一起进行共享访问的项目。如果要从可访问云的远程主机实时将源代码实时部署到部署服务器上,则云服务器是绝佳的选择。我强烈建议个人使用云技术。
 

克隆

新成员
已加入
2020年8月20日
留言内容
3
编程经验
5-10
感谢大家。对我来说,VB6(30岁!!!)无需保存就可以完全调试,而VS2019却不能完全调试。为此,手动进行源代码控制或对源代码进行备份看起来很不舒服,不是吗?如果进行了最终要放弃的更改,表单会发生什么情况?当灵感决定满足我需求时,我是否应该在进行任何“创造性”尝试之前复制所有项目文件?显然,我对VB6所遵循的过程并不十分安全,因为任何严重的故障调试都可能使您失去我正在测试的障碍,但是至少您有这样做的方法。我认为30年后,VS应该包括一种可以有效控制项目版本的工具,因此您可以使用其中的任何一个。

再次感谢你的帮助。很棒的论坛
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,524
地点
悉尼,澳大利亚
编程经验
10+
对我来说,VB6(30岁!!!)无需保存就可以完全调试,而VS2019却不能完全调试。
对于我来说,这一切都是有可能的,但那时候的事情还比较原始。值得庆幸的是,随着技术的进步,现在有更好的做事方法。
为此,手动进行源代码控制或对源代码进行备份看起来很不舒服,不是吗?
源代码控制不是手动的,并且进行备份就像右键单击顶级文件夹并发送到ZIP存档一样简单。
如果我做出了最终要放弃的更改,表单会发生什么情况?
在VS 2019中使用DevOps,放弃更改涉及在状态栏上单击更改计数以在Team Explorer中打开相应的选项卡,右键单击顶层文件夹并选择Discard。您正在尝试将其构建为繁琐的事情,但事实并非如此。很简单。
当灵感决定与我见面时,我是否应该在进行任何“创造性”尝试之前复制所有项目文件?
就像我说的,作为一个孤独的开发人员,您可能无需执行任何操作。您只是开始进行更改,如果决定不保留它们,则将其丢弃。源控制提供程序知道上次提交时每个文件的状态,因此它将恢复到该状态。

就是说,如果您愿意,可以为您提供更大的灵活性。例如,假设您有一个已部署的应用程序,并且当客户端想要对当前生产版本进行错误修复时,您已经添加了新功能。你做什么工作?使用源代码管理,这很容易。您将至少有两个分支-一个用于开发,一个用于当前生产。开发分支是您要添加的功能之一,而生产分支是您用来部署的确切代码。现在,您可以通过克隆Production分支来创建一个新分支,并在不影响实际Production代码或您的开发分支包含半成品新功能的情况下创建所需的错误修复。修复程序经过测试并准备好部署后,您可以将该分支合并到Production分支和Development分支中,因此,您要添加新功能的代码也可以修复该bug,而无需编写两次代码。 。

只需单击几下即可完成所有操作,因此请再次告诉我,使用源代码管理有多不舒服。这是一个新事物,因此有点令人恐惧,但有成千上万(甚至数百万)的开发人员使用来自各种提供程序的源代码控制,他们都对此表示感谢。一旦习惯了它,您甚至都不会考虑它,因为它只是工作流程的一部分。最终,您会想知道如果没有它怎么做以及为什么您认为不保存进行调试是一个好主意。
 

克隆

新成员
已加入
2020年8月20日
留言内容
3
编程经验
5-10
对于我来说,这一切都是有可能的,但那时候的事情还比较原始。值得庆幸的是,随着技术的进步,现在有更好的做事方法。

源代码控制不是手动的,并且进行备份就像右键单击顶级文件夹并发送到ZIP存档一样简单。

在VS 2019中使用DevOps,放弃更改涉及在状态栏上单击更改计数以在Team Explorer中打开相应的选项卡,右键单击顶层文件夹并选择Discard。您正在尝试将其构建为繁琐的事情,但事实并非如此。很简单。

就像我说的,作为一个孤独的开发人员,您可能无需执行任何操作。您只是开始进行更改,如果决定不保留它们,则将其丢弃。源控制提供程序知道上次提交时每个文件的状态,因此它将恢复到该状态。

就是说,如果您愿意,可以为您提供更大的灵活性。例如,假设您有一个已部署的应用程序,并且当客户端想要对当前生产版本进行错误修复时,您已经添加了新功能。你做什么工作?使用源代码管理,这很容易。您将至少有两个分支-一个用于开发,一个用于当前生产。开发分支是您要添加的功能之一,而生产分支是您用来部署的确切代码。现在,您可以通过克隆Production分支来创建一个新分支,并在不影响实际Production代码或您的开发分支包含半成品新功能的情况下创建所需的错误修复。修复程序经过测试并准备好部署后,您可以将该分支合并到Production分支和Development分支中,因此,您要添加新功能的代码也可以修复该bug,而无需编写两次代码。 。

只需单击几下即可完成所有操作,因此请再次告诉我,使用源代码管理有多不舒服。这是一个新事物,因此有点令人恐惧,但有成千上万(甚至数百万)的开发人员使用来自各种提供程序的源代码控制,他们都对此表示感谢。一旦习惯了它,您甚至都不会考虑它,因为它只是工作流程的一部分。最终,您会想知道如果没有它怎么做以及为什么您认为不保存进行调试是一个好主意。

你是绝对正确的!!!!。当您提到源代码控制,zip,备份等时,...我误解了过程,想到了控制代码和文件的手动方式,但是现在我找到了GitHub(您肯定在开始时指的是什么)及其确实像您提到的那样工作,并且非常符合我的需求。全面,轻松和自动控制版本(本地或云)。

感谢您的帮助。
 
最佳 底部