git-tfs克隆和清理

时间:2016-10-17 03:25:08

标签: tfs git-tfs

我已经从VSTS克隆了我的TFVC并且它没有任何错误地拉出了我的所有分支。然后我跟踪了许多在线帖子,他们说要通过以下方式清理我的项目:

  1. 从解决方案文件中删除GlobalSection(TeamFundationVersionControl)部分
  2. 删除所有* .vssscc文件
  3. 删除所有* .vspscc文件
  4. 当我这样做时,我几乎所有文件都出现在Team Explorer下的Changes窗口中。除了前面讨论的文件之外,所有这些文件在执行diff时都没有变化。

    从TFVC到git进行克隆后,清除分支的正确方法是什么?

    由于

2 个答案:

答案 0 :(得分:1)

如果您想将现有的TFVC回购迁移到Git回购,您可以使用git-tfs工具,只需几个命令即可migrate a TFVC repo to a Git repo

在我的示例中,通过以下命令,我已成功将现有TFVC repo迁移到包含所有分支的Git仓库。

enter image description here

enter image description here

如果您不想克隆分支,可以指定--branches = VALUE(VALUE = none | auto | all),选中https://github.com/git-tfs/git-tfs/blob/master/doc/commands/clone.md

答案 1 :(得分:0)

  

当我这样做时,我几乎所有文件都出现在Team Explorer下的Changes窗口中。执行diff

时,所有这些文件都没有变化

这应该是因为线路设置结束...

  

除了前面讨论的文件。

首先提交它们......

然后修复你的设置。

你有两个选择(不是mutualy独家,你可以做2.但如果你只做一个,做第二个):

  • (旧样式),设置git core.autocrlf设置。在Windows上,要么true将所有文件转换为windows eol样式,要么false告诉git不要触摸文件。这是一个选择问题。此设置将用于所有存储库,但将是个人的
  • (建议使用新的)将.gitattributes个文件添加到telle git如何处理所有类型文件的eol。此设置仅用于此存储库,但将由所有开发人员共享,并且任何人都无法提交错误文件。

请注意,对于您将尝试的所有策略,为了确保它有效,您将不得不做特别的事情。您将不得不擦除所有文件并从存储库中检出所有文件(因为这是在git修改文件的特殊时刻):

git checkout .

事实上,文件可能会被修改,因为它们已经按照您希望的格式进行了检查,因此请将它们全部(您将被迫)并在之后应用eol策略...

你应该在尝试之前仔细阅读并理解的good doc on the subject ......

PS:在git存储库中处理行尾并不是一件容易的事,它需要你很长时间才能真正理解它的工作原理(我不太确定自己) ;))