问题标签 [git-tfs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
7954 浏览

git - 如何针对 TFS 存储库使用 git-tfs 和惯用的 git 分支?

我如何习惯性地使用 git-tfs?

  • git 习惯用法是将分支检出到存储库的根目录。签出一个分支将用该分支的内容替换目录的内容。

  • TFS 习惯用法是检查存储库根目录下不同目录中的每个分支(甚至是主分支或主干分支)。签出分支会将其放置在当前目录旁边的新目录中。

使用git-tfs,我可以克隆 TFS 存储库或分支到 git 存储库。我想以 与 git branching idiom 一致的方式处理具有多个分支的 TFS 存储库。但我不确定技术上可行或推荐什么:)


克隆整个 TFS 存储库

如果我从 TFS 克隆整个存储库

这会给我一个master包含所有TFS 分支作为目录的 git。


为每个 TFS 分支添加一个远程

我不知道我是否可以(或如何)将 git 远程映射到每个 TFS 分支。

然后

我知道这在技术上是不正确的,但不玩我也不知道更好(我唯一的 TFS 存储库非常大,实验需要很长时间)

0 投票
2 回答
368 浏览

git - 如何在同一源代码树中使用 GIT-TFS 和 GIT-SVN?

我有一个我想做的项目不必要的复杂通过将 git 用于我的本地源代码控制更容易。我们在工作中使用 TFS,但我还必须将源推送到客户端的 SVN 服务器以进行生产发布。TFS 需要成为正式的记录来源[直到我能提出令人信服的切换案例:-)],SVN 只是里程碑,我希望 git 成为日常工作环境。

第二部分我一直在使用git-svn,基本上只是在里程碑处提交 git,然后推送到 svn。

我也想转而使用 git 而不是 TFS 进行更积极的开发,但我不确定如何/是否可以同时设置两个映射。我看到的所有git-tfs和 git-svn 示例都是从克隆存储库开始的,这要求存储库为空。是否可以添加某种元数据而不是克隆来设置 TFS 映射?

映射也有点奇怪(它是一个 CMS 站点,所以我们不将核心文件存储在源代码管理中,只有我们的自定义):

  • 标签(仅由 SVN 使用)
  • 分支(来自 SVN,未使用)
  • 主干(来自 SVN,符号链接到网站)
  • 网站
    • DesktopModules(在 TFS 中映射)
    • 门户(在 TFS 中映射)
    • 提供者(在 TFS 中映射)

git 是否能够处理映射到根目录的 SVN 存储库和进一步映射的 TFS 存储库?

删除 TFS 中映射的文件夹,然后从 git-tfs 克隆它们是否有效?

0 投票
1 回答
621 浏览

tfs - 批量合并到主后的樱桃采摘变更集

假设我有三个分支:

Dev 中的几个变更集:变更集 1、2 和 3 以及所有三个变更集都会影响某些文件。在某些时候,我将它们全部合并到 Main 并获得变更集 4,其中包括来自所有三个变更集的更改。

如果此时我必须将变更集 2 也合并到 Release 分支中,我该怎么办?如果我尝试从 Main 合并到 Release,我将不得不合并变更集 4,然后手动仅包含对 File 进行的必要编辑。但是在这种情况下,在签入后,TFS 会将整个变更集 4 标记为已合并,并且稍后不会将其提供给合并,尽管事实上不包括变更集 1 和 3 的更改。

我知道我可以通过将 Dev 中的每个变更集分别合并到 Main 中来避免这种情况,但这非常乏味并且似乎不是正确的方法。

我也可以使用 baseless 合并并直接从 Dev 进入 Release,但我认为这是一种极端的措施。

还有其他方法吗?

0 投票
3 回答
3445 浏览

git - 使用 git-tfs 桥的最佳实践和问题

好吧,我开始这个话题主要是为了和社区分享我最近使用git-tfs的经验。

如果有人有其他要分享的东西 - 这对我也有帮助。

0 投票
4 回答
839 浏览

visual-studio - 有没有办法抑制 VS 试图上网?

如果已配置解决方案与 TFS 的绑定,当您打开解决方案时 VS 会询问您:

或者,如果 TFS 不可用,它建议选择暂时脱机工作或完全删除绑定。

有没有办法抑制这些对话框?

给你一些背景。我们团队的一部分直接使用 TFS,另一部分则通过 git-tfs 工作。使用 git-tfs 时 - 我根本不需要在线模式。所以每次我打开一个解决方案或在解决方案中重新加载一个项目时——我应该一遍又一遍地回答同样的问题。但是我无法删除绑定,因为直接使用 TFS 的人将失去无缝连接到 TFS 的能力。

0 投票
1 回答
627 浏览

git-tfs - 当存储库需要在签入前进行代码分析时,如何使用 git-tfs?

我正在使用git-tfs,并尝试使用git tfs checkintool将我的 Git 更改提交到 TFS。它打开了 TFS 提交窗口,我填写了我的提交评论并关联了我的工作项;但是当我单击确定时,它给了我“策略失败 - 签入无法继续,因为尚未满足策略要求”对话框。以下是政策警告的说明:

代码分析中的内部错误。无法加载文件或程序集 'Microsoft.VisualStudio.CodeAnalysis.Sdk.UI, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。该系统找不到指定的文件。

截屏:

在此处输入图像描述

毫不奇怪,无论我是否已经在 Visual Studio 中构建和运行代码分析,它都会给出同样的 DLL-not-found 错误。

我在 C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies 中找到了 Microsoft.VisualStudio.CodeAnalysis.Sdk.UI.dll,只是为了好玩,我尝试将该目录临时添加到我的 PATH(从命令行: set path=%path%;C:\Program Files\...) 然后git tfs checkintool再次运行。但是当我单击“确定”时,它再次给出了同样的错误。

我可以覆盖策略失败并提交,但我不想每次签入时都这样做。我也可以完全禁用代码分析策略,但这似乎不太合理。

有没有办法可以git tfs checkintool找到这个 DLL 以便它可以成功提交?

0 投票
1 回答
1002 浏览

git - 尝试创建搁置集的 Git-TFS 给出“无法识别的身份”

我正在使用git-tfs,它的大部分功能都可以正常工作。我可以拉,我可以使用 checkintool。但我无法创建搁置集。当我尝试时git tfs shelve ShelveSetName,我收到此错误:

TF14045: 身份 MYDOMAIN\Joe White 不是可识别的身份。

看起来,出于某种奇怪的原因,git tfs shelve它试图对我的名字(“Joe White”,包括空格)而不是我的用户名进行身份验证,所以它当然无法通过身份验证,因为用户名中不能有空格。

我怎样才能git tfs shelve正确地进行身份验证,即使用我当前登录的 Windows 用户凭据?

0 投票
2 回答
2279 浏览

git-tfs - git-tfs 处理标签

我有一个关于 git-tfs 集成以及它如何处理标签的问题。

使用 git-tfs 时,如何处理标签?它们是否导入到 git 中?

将更改推回 tfs 时,“标签”是否也“导出”?

谢谢

0 投票
1 回答
3211 浏览

git - git - 设置路径变量

当我运行以下命令来更改 git bash 中的路径变量时 - 它可以工作。

在我运行了一些 git-tfs 命令后,它会恢复到原始设置。

可以解释为什么吗?

$ PATH=$PATH:我的 git-tfs 路径放在这里

澄清一下,它首先起作用。但是随后 git-tfs 命令停止工作,这是因为它所在的文件夹不再出现在路径中。

编辑:当我关闭 bash 时,更改不会保存。

0 投票
3 回答
2500 浏览

git - 如何在团队中使用 git tfs

我最近开始使用 git tfs 作为使用 git 在本地工作和提交之间的桥梁,然后提交到 tfs 以通过我们的持续集成系统并与团队成员共享。

我想开始与我的团队合作,使用 git 进行源代码控制以共享分支和更改,然后最终签入 tfs 以进行持续集成。

这是我可以做的事情,还是 git tfs 仅适用于在本地工作的一个人?