3

我已经尝试解决这个问题,但到目前为止还没有成功。我正在使用git-tfs签入我对 TFS 的更改(本地使用 GIT 存储库)

我读过这个问题,它简要描述了您可以使用元数据在提交消息中关联工作项(执行 git tfs rcheckin 时出现 TF26198 错误)。我尝试使用的命令:

1)

git tfs checkin -m "Changes to workitem #12345" => doesn't associate changeset to TFS workitem

2)

git tfs rcheckin -w12345 -m "Changes to workitem 12345" => triggers error "error: This syntax with one parameter is only allowed in bare repository." 

3)

git tfs checkin -w12345 -m "Changes to workitem 12345" => triggers error No TFS parents found

4)

git tfs checkin -m "Changes to workitem #12345" => doesn't associate work item

关于我做错了什么的任何想法?

谢谢,尤利亚

4

2 回答 2

4

尝试:a像这样在 -w12345 后面添加:

git tfs rcheckin -w12345:a -m "Changes to workitem 12345"

或者

git tfs checkin -w12345:a -m "Changes to workitem 12345"

您也可以使用:r而不是:a“解决”而不是“关联”

我认为:a如果您不指定值,它应该默认为,但这对我来说从来没有用过。

于 2014-06-03T11:43:47.580 回答
1

首先,您应该知道和之间的区别checkin(有关该命令,rcheckin请参阅git-tfs 文档......这真的很有帮助!)

然后分析提交消息以找到仅与rcheckin( 而不是checkin) 的工作项关联,因此 1) 和 4) 将不起作用。

2)消息很奇怪,但那是因为rcheckin不应该那样工作。

3)今天才发现(真是巧合!)这个合成器中有一个错误(我从未使用过!)。只需使用:

git tfs checkin -w12345: -m "对工作项 12345 的更改"

或 git tfs checkin -w12345:a -m "Changes to workitem 12345"

通过错误...

但是你得到的错误告诉我你有一个更大的问题(与工作项关联无关)并且你错过了 git-tfs 的一些东西(但我看不出是什么:()

供您参考,我非常喜欢使用产生大量合并的可怕历史的命令rcheckincheckin

rcheckin更简单。使用 #12345 将所有 git commit 与提交消息中的相关工作项关联起来,当您满意时,从 tfs 获取,重新调整您的工作(或执行 a git tfs pull -r)并执行以下操作:

git tfs rcheckin

一切都应该没问题!

另请查看我们的用例

于 2014-06-03T14:06:46.917 回答