tfs签入红黄绿各红黄绿代表什么意思思

[TFS]&禁止默认允许多人签出和强制解除签入签出锁
查看原文:
使用 Visual Studio 2010 Team Foundation Server
进行源代码编辑时,可以对代码实施以下三种锁定之一:
Unchanged - Keep any existing lock
Check Out - Prevent other users from checking out and checking
Check In - Allow other users to check out but prevent them from
checking in
貌似这个&签出&和&签入&锁的概念很类似于数据库中的&排他锁(独占锁,X)&和&共享锁(S)&的概念。
下面讨论在使用&签入&和&签出&锁中遇到的两个问题,两者的适用场合有一定对立性。
一、如何关闭TFS源代码管理的多人签出功能?
当进行代码的&签出&操作时,可以选择上述三种锁定措施之一,默认是&不改变&;如果直接对代码进行编辑时,会进行自动签出,并默认使用&不改变&的锁定措施。这种措施在多人并发修改代码时,会造成签入时的大量冲突。因此,可能会希望改变TFS的默认选项,对签出的代码强制加上&排他锁&。
操作方法是:右键选中项目---&团队项目设置---&源代码管理,在弹出对话框的
"签出设置"选项卡中查看以下界面:
系统默认勾选了&启用多个签出&,我们可以将其去掉;同时注意&启用在签出时获取最新版本&这个选项默认不被勾选,个人觉得这是个很有用的选项,因此顺便将其勾选。
取消&启用多个签出&的选项后,在签出代码时,会默认只能选择施加排他锁:
二、怎么强制解除签入签出锁(正在编辑)
网上搜索这个问题的关键字,结果大都是网友&随风飘扬&针对 Visual Studio 2008 Team Foundation
Server 所写的一篇维护手记(见文末参考资料列表)。
下面针对 TFS 2010 的环境,写一下具体应怎么进行强制解除签入签出锁的操作。
我们在使用TFS的时候会使用到TFS中的SourceControl,SourceControl中的优点我就不用多说了,但是SourceControl有个比较致命的缺点,也是SourceControl基于工作区这种模式下所带来的问题,首先SourceControl源码管理会在每个客户机器上创建一个工作区,然后这个工作区域映射到服务器上的源码文件夹,我们在正常签入、签出的时候,我们的源码会在服务器到客户端的工作区进行操作,这是没有问题的。但是我们在使用TFS的时候基本上都是多人的并发签入签出,而TFS在设计的时候是支持签入锁定与签出锁定的,默认项目组成员在签出项目的时候是不应用任何锁的。即使有项目组成员在把源码项目从TFS的SourceControl中签出,并且加入了签出锁或者是签如锁,这样也无所谓,只要这个项目组的成员按照规矩把这个项目最后在签入到SourceControl中,签出的锁定会自动的解除。
关键的问题是如果这个项目组的成员喝咖啡去了,或者放假了,或者这个项目组的成员离职了,但是他们在离开前对项目中几个文件施加了签出(入)锁,这时如果项目组的下个成员想要修改被锁定的文件,或者是TFS的管理员想要在SourceControl中删除这个项目,问题就出现了。当我们通过Team
Explorer进行操作的时候,Team
Explorer会提示有签出(入)锁,然后告诉我们是哪个用户,在哪个工作区进行的锁定。但是我们无法通过Team
Explorer图形界面来进行撤出签出操作,只能通过TFS命令:undo来进行操作,强行撤出别人签出的文件。
首先说明下工作区的定义,一个完整的工作区包括应该包括&WorkSpaceS[所在的域\]用户名&,用逗号分隔工作区(默认是计算机名)和用户名。(TFS
2008中的工作区定义似乎还包括一个用户序号,即&WorkSpaceS[所在的域\]用户名[:用户序号]&,不知道 TFS
2010 是否已经将其取消。)
撤销的步骤如下:
1、命令行模式进入tf程序所在目录(需要管理员权限)
cd &C:\Program Files\Microsoft Visual Studio
10.0\Common7\IDE
如果是在64位操作系统上安装的,可能是:
C:\Program Files (x86)\Microsoft Visual Studio
10.0\Common7\IDE
2、用&tf workspaces
命令查找该用户(这里以zwt为例)的工作区完整定义,这里指定了/server参数和/owner参数,如果不指定/owner参数,默认用户名为执行该命令的用户,即查找满足&*;(执行该命令用户名)&的工作区。
tf workspaces &/server:http://dq311-server:8080/tfs
&/owner:zwt
上述命令执行结果如下(附不使用任何参数的tf workspaces命令执行结果对比)
3、查看该用户挂起的更改(这里查找用户xyc在任意工作区挂起的更改)
tf status &/server:http://dq311-server:8080/tfs
&/workspace:*&/user:xyc&
执行结果(注意服务器的文件路径和文件名分两行显示):
4、使用tf undo命令强制撤销他的签出,命令如下:
tf undo /server: TFS服务器URL
&/workspace:WorkSpaceS[所在的域\]用户名[:用户名序号]
&$/路径/文件名
tf undo &/server:http://dq311-server:8080/tfs
&/workspace:HY-PC;hy
&&$/CTCS/TSAGS_TEAM/TestHY/Program.cs
根据被撤销操作的工作区是否位于执行undo操作的计算机上,结果有两种情况:
第一种是被undo的工作区正好位于执行该操作的计算机上,则服务器和本地代码可以同时被undo,其效果和在Visual
Studio中对文件执行&Undo Pending Changes&一样。
更多的情况是被undo的工作区不在执行该操作的计算机上,则只能在服务器上撤销操作。
然后大家就可以刷新你的Team
Explorer查看那个加锁的文件,执行Undo操作后,该用户对这个文件的锁定与挂起全部取消了,这样你就可以通过Team
Explorer进行修改,或者删除等更多的操作了。
需要注意的是,上述第二种情况下,虽然&签出&状态已经被撤销了,文件版本恢复到了服务器版本,但是该工作区本地的代码修改并不会被撤销,从而和服务器代码是不一致的!也即&版本一致,实际代码不一致&,这种情况下,在该工作区上执行&获取最新版本&命令也无法更新到服务器版本,只能通过&手动获取指定版本&等方法来解决冲突。(或者也可以等该代码下次版本更新?)
此外,有几个地方值得说明(部分可能仅适用于TFS 2008):
1、关于用户名序号
举个例子,如果你的用户名删除了,然后又新建了一个同名的用户名,那么原有的用户名与工作区的关联还是存在的,所以就会出现两个同名工作区,Work1;WangGi:5,与Work1;WangGi。这样你在操作的时候就可以根据不同的序号来找到对应的工作区了。
2、如何查看用户名序号
你可以实用这个命令来查询工作区的完整信息(注意在执行命令的时候有管理员的权限):
tf workspaces /owner:* /computer:* /server:teamserver2
/format:detailed
该命令查看当前服务器所有机器上的工作区情况,包含工作区的名字、工作区的ower等,这样你的用户后面的ID就可以看见了。
3、如果工作区不存在了怎么办?(例如工作区重装系统)
基本没有影响。
首先使用命令行模式,显示所有的工作区,然后找到你所要删除的工具删除即可,删除工作区的命令是:
tf workspace &/workspaceowner
例如删除用户dq311在HY-PC上的工作区,命令为:
tf workspace &/server: http://dq311-server:8080/tfs
&/delete HY-PC;dq311
1、如果还有其他问题,建议可以 tf / ?,就会有详细的操作说明出来;
2、注意 tf workspace 和 tf workspaces 是两个不同的命令。
三、如何将源代码管理中的代码取出来,让它不包含vssscc扩展名的文件
这个问题其实和签入签出锁定无关。查阅资料时正好看到了有人问,就顺便记录在这里。
首先可以通过获取最新版本的项目到本地工作区,然后在解决方案管理器中,点击这个项目的解决方案,然后在文件菜单下的源码管理下的源码管理设置,断开与本地工作区内项目的关联即可。
参考资料:
[1] 博客园:随风飘扬:
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。转自:http://www.it165.net/pro/html/8.html
相信有使用过Team Foundation Server(TFS)的人偶尔都会碰上一个问题,就是当项目中的某个开发者将档案签出后却没有签入,或者开发者签出档案后没有签入就离职了等等情况下,会使的档案被锁定无法编辑的情况发生,当然TFS中签出有三种锁定类型如下:
未变更-保持限有的任何锁定&:&当已签出此档案时,如有其它使用者要签出与签入档案时不会受到影响
签出-不允许其它使用者签出与签入&:&当已签出此档案时,如有其它使用者要签出签入档案时将无法动作
签入-允许其它使用者签出但不允许签入&:&当已签出此档案时,如有其它使用者要签出签入档案时将只能作签出动作
如当初签出的时候是使用第一种类型的话是还不会影响很大,但是第二第三种的话就会影响到作业,接下来就来介绍一下碰到这种问题时可以使用甚么方法来解决。&范例
方法一:&使用命令提示字符TFS UNDO命令&首先要先检查一下在VS安装的数据夹中有没有&TF.exe&档案,路径如下:C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE或C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE如果有的话就继续以下步骤开始 & 执行 & 输入 CMD & 开启命令提示字符窗口输入:&CD C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE&
先将目录切换到TF.exe的资料夹下,接着可以输入以下三种命令取得相关信息:1.查询相关联的工作区输入: tf workspaces /owner:[Account]&/server:http://[ServerDomainl]:[Port]/tfs/[项目集合名称]/例如: tf workspaces /owner:arvin /server:.tw/:8080/tfs/专案部/完成后会返回此使用者项目中的工作区清单。&
2.查询变更的状态当知道工作区名称后就可以更进一步的查询该使用者的变更状态,输入: tf status /server:[ServerDomain]:[Port]/tfs/[项目集合名称]/ /workspace:* /user:[Account]例如: tf status /server:.tw:8080/tfs/专案部/ /workspace:* /user:arvin完成后即会返回变更状态纪录。&
3.强制签入从第二步骤可以发现 test1.aspx 这只程序已经被签出编辑,再来要将此程序强制回复原始的变更,&输入:tf undo /workspace:[工作区名称];[Account]&[TFS项目路径+文件名称]/server:[ServerDomain]:[Port]/tfs/[项目集合名称]/例如:tf undo /workspace:ARVIN-VAIO;arvin $/TestProject/test.aspx /server:.tw:8080/tfs/专案部/&
经过以上三个步骤,就可以将已签出的档案强制签入啦。&方法二:&使用&MSBuild Sidekick&MSBuild Sidekick 是VS的一个第三方工具套件,使用此工具的TFS账号必须要有一定的权限,以下简单说明使用方法。&首先至&&下载 Sidekick 安装档,关闭VS安装此工具,安装完成后在VS工具列的「工具」标签中会多出一个「Team Foundation Sidekick」选项,选择到该选项内的「Status Sidekick」选项。&
选择后会跳出一个状态搜寻窗口,依照需要输入的条件查询后即可查出被签出的那只程序档案。
接下来点选到 test1.aspx 此列,点选上方返回图样的按钮后即可以将此程序签入TFS。 www.it165.net
第二种方式透过接口就可以直接强制签入档案,也算是一种非常简单的方法,
以上两种强制签入的方法就让各位读者决定要使用哪一种方式喽。
阅读(...) 评论()TFS签入签出标准_文档库
文档库最新最全的文档下载
当前位置: & TFS签入签出标准
TFS签入签出标准
TFS签入签出规范
1)开发平台的约定
a)开发操作系统环境和最终用户使用环境(包含Service Pack版本号) 开发环境:Windows2008SP1 Windows7
用户环境:Windows2008SP1 SP1 WinXP
b)开发工具版本
Vs2008SP1 + TFS团队资源管理器
c)数据库类型已经版本
SQLServer2008
d)版本控制工具
e)开发规范的执行问题
《C#代码规范》
2)工作方式的约定
a)开始工作前的行为(每天开始工作先签出代码) 时间:8:30-9:30
1、根据需要,签出你所需要修改的代码(注:在签出代码时,你的签出文件会和服务器同步)不要签出所有代码
2、修改代码时,不要改动你签出文件中他人的方法,如必需改动的,请与开发者协商
3、方法体不要太长,尽量不要超过24行,多进行重构
4、当一个方法完成时,请马上构建单元测试,并测试通过
5、单元测试需可重复测试,不要出现只能测试一次,下次测试必须修改数据库才能再测试的问题
b)每日签入的行为(每天需签入当日全部开发代码) 时间:11:00-12:00 17:00-18:00
1、签入代码前先选择“获取服务器上最新版本(递归)”(不会对你的已签出文件覆盖)
2、编译解决方案下所有工程
3、解决编译冲突
4、运行单元测试
5、提交签入你的签出文件
Word文档免费下载:
TFS签入签出及代码与工作项关联_IT/计算机_专业资料。TFS如何进行安全的签入签...TFS签入签出标准 2页 1下载券 TFS2010 64页 免费 TFS 2010权限设置 9页 1...2.2 TFS 源代码管理项状态 图标 状态 说明 无 空白 已签入 已签出 已孤立 可编辑 只读 禁用 表示其 Team Foundation 源代码管理 状态未知的项。 表示位于 ...月签入签出表姓 名 总部门 工号 二级部门 员工签字 签出时间 员工签字 二级部门 员工签字 签出时间 员工签字 日期 25 26 27 28 29 30 31 1 2 3 4 5...A:TFS中所有的项目都设置了签入时必须写注释的策略,在签入时写上注释 就可以成功签入。 十六.需要关注的事项及常见问题 5.Q:XX同事文件签出了,但是我这边看...4、 文件签入与签出操作 选中一个文件夹,右击,显示下图: 1) 、获取最新版本 点击“获取最新版本” ,显示如下图: 将 tfs 服务器上的文档下载到本机 2)、...TFS源码管理.pdf 签入签出 版本控制文件存储 TFS Build ? TFS Build 提供了公共生成实验室的功。 使用 TFS Build,生成管理人员可以同步 源代码、编译应用程序、...四、TFS源代码 管理操作签入与签出说明一个文件能够同时被多个人签出。您签出文件之后, 如果其他人对其进行了更改,则当您签入回去时, 文件将经历合并过程以解决...TFS 配置管理操作手册配置解析文件在 C:\Windows\System32\drivers\etc\hosts ...如何签入, 我们在签出的时候已经说过了, 对于我们新增加的文件, 需要通过以下...可以迚行签入、签出、工作项管理操作。并且可以通过浏览器访问 TFS。 6.4 报表权限如果以上面建立的 test 用户访问,则什么内容都没有: 可以以管理员身份登陆, ...君,已阅读到文档的结尾了呢~~
TFS签入签出及代码与工作项关联 ...
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
TFS签入签出及代码与工作项关联
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 tfs签入签出 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信