无法将“git-tfs”克隆代码推送到远程源

问题描述 投票:0回答:2

我必须将代码从 TFS 迁移到 Azure DevOpsService Git 存储库。为此,我使用“git-tfs”。使用“tfs-git”克隆tfs代码是可以的。但是,当我尝试将代码推送到远程源时,我遇到了问题。我尝试了以下方法 -

  1. 在一个空文件夹中,我做了
    git init
    ,然后
    git clone <remote Git>
    。之后我就跑了
    git tfs clone <TFS-url> <TFS folder
    。我删除了
    .git/
    存储库中“Config”和“Description”文件的痕迹(只是删除了 的引用。当我尝试通过执行
    git remote add origin <remote Git Url>
    git push –u origin –-all
    来推送代码时,我收到了类似
    Outer clone contains inned clone. Do you want to create submodule?
    的错误我可以理解,因为在从 TFS 克隆的文件夹中,已经有一个“.git”文件夹。取而代之的是,我尝试了正常的
    git add .
    git commit
    git push
    ,我得到的响应是“一切都是最新的”,但没有任何东西真正被推送到远程源。
  2. 其次,我尝试使用另一个空文件夹。我做了
    git init
    但没有从远程源克隆。然后我使用“git-tfs”从 TFS 服务器克隆了 TFS 代码。这次没有‘外分身’,我以为一切都会顺利。但是,正如我所做的那样,已经创建了一个
    git init
    文件夹。我再次遇到同样的错误。
    我再次尝试使用一个新目录。我没有做
  3. .git
  4. 。我什至将 TFS 代码克隆到另一个目录中,然后复制到空目录中。设置原点后,当我执行
    git init
    时,我收到消息
    git push –u origin –-all
    当我尝试
    Updates were rejected because the tip of your current branch is behind. Use git pull before pushing again.
    时,我收到消息
    get pull
    。 如何解决这个问题?
    
        
git azure-devops tfs git-tfs
2个回答
0
投票
fatal:regusing to merge unrelated histories

文件夹。

'.git'
文件夹中有一个
config
文件,它定义了由
git-tfs
工具初始化的版本控制信息(包括原始远程存储库)。 因此,我们需要先从

'.git'

文件中删除原来的远程仓库和其他

git-tfs
设置,然后运行
config
来设置 git 远程。
尝试按照以下步骤执行此操作:

    创建TFS代码要迁移到的目录 (以下示例中的
  1. git remote add origin <remote Git Url>

    )。

    
    

  2. 以管理权限打开终端并 cd 到新的 在终端中创建目录。
  3. 运行以下命令来克隆 TFS 存储库
  4. git-tfs-demo-repo

    在目录中创建了一个新的存储库(例如此处的

    git tfs clone https://{server-Name}/{Collection} $/ProjectName/xx

    )。

    
    

  5. 使用目录
  6. git-tfs-demo-repo

    中的任何文本编辑器打开

    config
    文件 新创建的存储库目录。 原始的
    .git
    文件应该是这样的:

  7. config

    中删除除

    [core]
    部分之外的所有部分 文件,然后保存。因此,
    config
    文件将如下所示:

  8. 运行以下命令来设置git远程并推送到远程仓库。
  9. config

    git remote add origin <remote Git Url>

    
    

  10. 一旦完成,我们可以看到
  11. git push –u origin –-all

    文件变成了这样 this:(版本控制更改为新的远程存储库)


-1
投票
https://learn.microsoft.com/en-us/azure/devops/repos/git/import-from-tfvc?view=azure-devops

这将允许您在新的 git 存储库中保留 TFSVC 存储库的历史记录。

© www.soinside.com 2019 - 2024. All rights reserved.