首页 \ 问答 \ 什么是线程?(What are threads?)

什么是线程?(What are threads?)

  1. 什么是线程?
  2. 为什么你认为我应该关心他们?
  3. 你会在哪里建议我去学习更多(我在德尔福工作,如果这很重要)。

  1. What are threads?
  2. Why do you think I should care about them?
  3. Where would you suggest I go to learn more (I'm working in Delphi, if that matters).

原文:https://stackoverflow.com/questions/775139
更新时间:2023-02-17 17:02

最满意答案

可以在SourceSafe中执行此操作,但需要一些手动干预:

  1. 首先,确保签入要重命名的文件。
  2. 在SourceSafe中,右键单击该文件并从菜单中选择Rename (或者,也可以按F2),然后重命名文件。
  3. 这只会重命名SourceSafe中的文件。 您必须将重命名的文件检出到工作文件夹中,然后从工作副本中删除原始文件以完成重命名。

如果您查看文件的历史记录(右键单击,然后Show History ,或者使用Ctrl-H ),您将看到它的所有历史记录都是完整的。 但是请注意,SourceSafe将通过文件的所有历史记录条目中的新名称引用文件。 在项目文件夹级别跟踪实际重命名。 如果您查看包含重命名文件的文件夹的历史记录,您将看到一个历史记录项,指示该文件已从oldname重命名为newname


附录:关于从历史记录中检索旧版本重命名文件的说明

Joe White评论了这个答案 ,当你对一个旧版本的重命名文件进行Get时,SourceSafe不会遵守原始文件名。 这是真的,如果您从文件历史记录查看器获取较旧的版本。

但是,如果您从父文件夹的历史记录查看器Get较旧版本的代码(在重命名之前),SourceSafe会在将文件放入工作文件夹时正确使用原始文件名。

这种行为的原因可以追溯到SourceSafe跟踪在父文件夹级别而不是在每个文件级别重命名的事实。


It's possible to do this in SourceSafe, but it requires a bit of manual intervention:

  1. First, make sure the file you want to rename is checked in.
  2. In SourceSafe, right-click the file and select Rename from the menu (or alternatively, simply press F2), then rename the file.
  3. This only renames the file within SourceSafe. You will have to check out the renamed file to your working folder and then delete the original file from your working copy to complete the rename.

If you view the file's history (right-click, then Show History, or altenatively, Ctrl-H), you will see that all of its history is intact. Note, however, that SourceSafe will refer to the file by its new name in all of the history entries for the file. The actual rename is tracked at the project folder level. If you view the history of the folder that contains the renamed file, you'll see a history item indicating that the file was renamed from oldname to newname.


Addendum: A note on retrieving older versions of renamed files from history

Joe White commented on this answer that SourceSafe doesn't honor the original filename when you do a Get on an older version of a renamed file. This is true, if you are getting the older version from the File History viewer.

However, if you do a Get of an older version of your code (before the rename) from the parent folder's history viewer, SourceSafe will correctly use the original filename when it puts the files in your working folder.

The reason for this behavior goes back to the fact that SourceSafe tracks renames at the parent folder level and not at the per-file level.

相关问答

更多
  • 您可以在VSS数据库中创建新用户,然后可以使用VSS导入工具从旧数据库导入数据。 请参阅Kevin Gao在VSS上的博客文章 。 You can create a new user in the VSS data base and after that you can use VSS Import Tool to import data from the old one. See Kevin Gao's blog entry on VSS.
  • 在源代码安全上使用subversion的观点是,你没有独占锁,许多人可以在同一个文件上工作。 如果你开始在文件上使用独占锁,你将失去SVN的很多好处。 这个想法是在代码合并期间修复冲突。 看到这个问题和答案,就这些问题进行一些讨论( Revision control locking: Is the jury still out? )。 The point of using subversion over source safe is that you don't have exclusive lock an ...
  • 检查文件C:\WINDOWS\VBADDIN.INI ,并确保文件的“[Add-Ins32]”部分下有一行“vbscc = 1”。 重新启动VB6并转到“加载项|加载项管理器”。 应该列出“源代码控制”加载项。 马克赫德修正更新。 Check the file C:\WINDOWS\VBADDIN.INI and make sure that there is a line "vbscc=1" under the "[Add-Ins32]" section of the file. Re-start VB6 ...
  • 我不认为SourceSafe有一个简单的方法来做到这一点..但我从2005年以来没有使用过SourceSafe。你可以尝试的一种方法是使用分而治之搜索。 首先,在未来选择一个日期,如果有错误,请将其长度加倍,直到找到没有错误的版本。 你只需要两个已知的点就可以了,一个是当你知道这个bug存在时,另一个知道这个bug不在那里,把这两个分成两半,然后检查中间的版本。 如果缺陷存在,则将上半部分减半,如果没有将下半部分减半。 这会更有效,然后查看每个文件版本。 我不记得SourceSafe是否有每个文件的版本号, ...
  • 可以在SourceSafe中执行此操作,但需要一些手动干预: 首先,确保签入要重命名的文件。 在SourceSafe中,右键单击该文件并从菜单中选择Rename (或者,也可以按F2),然后重命名文件。 这只会重命名SourceSafe中的文件。 您必须将重命名的文件检出到工作文件夹中,然后从工作副本中删除原始文件以完成重命名。 如果您查看文件的历史记录(右键单击,然后Show History ,或者使用Ctrl-H ),您将看到它的所有历史记录都是完整的。 但是请注意,SourceSafe将通过文件的所有 ...
  • 工具栏中有一个“分支文件”图标。 看起来像左边的一个页面,两个箭头分开指向右边。 转到需要回滚到先前版本并在THAT实例处分支的项目。 单独保留PRIMARY条目。 然后,您应该能够根据需要回滚该特定单个文件(或多个文件)。 There's a "branch files" icon in the toolbar. looks like a page on the left with two arrows split pointing right. Go to the project that you ne ...
  • 我们离开了VSS这个地狱去了VisualSVN ,并且从未回头。 它不是免费的(但并不昂贵),使用开源组件,与Visual Studio非常好地集成在一起,拥有一个体面的社区,并且考虑到质量/支持,我们觉得它很有价值。 编辑:如果您正在开发开放源代码项目,根据一些额外的直接标准,您可以在这里免费获得VisualSVN的开源许可证。 We left the hell that is VSS to go to VisualSVN and have never looked back. It's not free ...
  • 我终于解决了这个问题。 令人困惑的是... 在VS中,我右键单击并选择“在文件资源管理器中打开文件夹”,然后它转到我正确分支的本地副本 通过VSS工具获取最新版本后,每个项目中的类都来自正确的分支 但是从VS获取最新版本并且已经检出的内容的视图来自不正确的分支。 我知道解决方案的更改是检入正确的分支,所以在完整的解决方案下拉到我的机器后,我删除了所有项目,直到解决方案为空。 然后我一个接一个地把它们加回来。 完成后,一切都链接到正确的分支! 所以某个地方(我无法找到在记事本中打开解决方案/项目)项目混淆了他 ...
  • 如何简单地重置VSS管理员密码? http://not42.com/2005/06/16/visual-source-safe-admin-password-reset/ http://thetrainerph.spaces.live.com/blog/cns!9F717AF2A2401F0F!2809.entry 我的感觉是,在为VSS编辑文件时,这是一场赌博。 是的,它们只是文件,但采取这种后门方法会产生什么副作用? 添加新用户时,VSS管理控制台中实际发生的事件数量未知。 为什么不以正确的方式做到这一 ...
  • 您看到文件消失, 因为您正在使用Visual SourceSafe 。 请参阅源代码管理:除SourceSafe之外的任何内容 。 你会很高兴的。 今天仍然没有理由继续使用VSS。 You're seeing files disappear because you're using Visual SourceSafe. See Source Control: Anything but SourceSafe. You'll be glad you did. There's no excuse to still ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)